Inserindo e atualizando dados em uma tabela (tutorial)
Agora que você criou a tabela Products, está pronto para inserir dados na tabela usando a instrução INSERT. Depois que os dados forem inseridos, você alterará o conteúdo de uma linha usando uma instrução UPDATE. Você usará a cláusula WHERE da instrução UPDATE para restringir a atualização a uma única linha. As quatro instruções inserem os dados a seguir.
ProductID |
ProductName |
Price |
ProductDescription |
---|---|---|---|
1 |
Clamp |
12.48 |
Workbench clamp |
50 |
Screwdriver |
3.17 |
Flat head |
75 |
Tire Bar |
Tool for changing tires. |
|
3000 |
3mm Bracket |
.52 |
A sintaxe básica é: INSERT, nome da tabela, lista de colunas, VALUES e uma lista de valores a serem inseridos. Os dois hífens antes de uma linha indicam que a linha é um comentário e o texto será ignorado pelo compilador. Neste caso, o comentário descreve uma variação admissível da sintaxe.
Para inserir dados em uma tabela
Execute a instrução a seguir para inserir uma linha na tabela Products que foi criada na tarefa anterior. Esta é a sintaxe básica.
-- Standard syntax INSERT dbo.Products (ProductID, ProductName, Price, ProductDescription) VALUES (1, 'Clamp', 12.48, 'Workbench clamp') GO
A instrução a seguir mostra como você pode alterar a ordem na qual os parâmetros são fornecidos alternando o posicionamento de ProductID e ProductName na lista de campos (entre parênteses) e na lista de valores.
-- Changing the order of the columns INSERT dbo.Products (ProductName, ProductID, Price, ProductDescription) VALUES ('Screwdriver', 50, 3.17, 'Flat head') GO
A instrução a seguir demonstra que os nomes das colunas são opcionais, desde que os valores estejam listados na ordem correta. Essa sintaxe é comum, mas não é recomendada, pois pode ser mais difícil para outras pessoas entenderem seu código. NULL é especificado para a coluna Price porque o preço desse produto ainda não é conhecido.
-- Skipping the column list, but keeping the values in order INSERT dbo.Products VALUES (75, 'Tire Bar', NULL, 'Tool for changing tires.') GO
O nome de esquema é opcional, desde que você esteja acessando e alterando uma tabela em seu esquema padrão. Como a coluna ProductDescription permite valores nulos e nenhum valor está sendo fornecido, o nome de coluna ProductDescription e o valor podem ser descartados completamente da instrução.
-- Dropping the optional dbo and dropping the ProductDescription column INSERT Products (ProductID, ProductName, Price) VALUES (3000, '3mm Bracket', .52) GO
Para atualizar a tabela de produtos
Digite e execute a instrução UPDATE a seguir para alterar o ProductName do segundo produto de Screwdriver para Flat Head Screwdriver.
UPDATE dbo.Products SET ProductName = 'Flat Head Screwdriver' WHERE ProductID = 50 GO