插入和更新表中的数据(教程)

现在您已经创建了 Products 表,可以通过使用 INSERT 语句向该表中插入数据了。 插入数据后,将通过使用 UPDATE 语句更改行的内容。 您将使用 UPDATE 语句的 WHERE 子句,以限制对单个行的更新。 这四条语句将输入以下数据。

ProductID

ProductName

价格

ProductDescription

1

Clamp

12.48

Workbench clamp

50

Screwdriver

3.17

Flat head

75

Tire Bar

Tool for changing tires.

3000

3mm Bracket

.52

基本语法为:INSERT、表名、列的列表、VALUES,然后是要插入的值的列表。 如果某行的前面有两个连字符,则指示该行为注释,编译器将忽略其文本。 在这种情况下,注释说明允许的语法变体。

向表中插入数据

  1. 执行以下语句,将一行插入到在上一个任务中创建的 Products 表中。 基本语法如下:

    -- Standard syntax
    INSERT dbo.Products (ProductID, ProductName, Price, ProductDescription)
        VALUES (1, 'Clamp', 12.48, 'Workbench clamp')
    GO
    
  2. 以下语句显示如何通过在字段列表(在圆括号中)中和值列表中均切换 ProductID 和 ProductName 的位置,更改提供参数的顺序。

    -- Changing the order of the columns
    INSERT dbo.Products (ProductName, ProductID, Price, ProductDescription)
        VALUES ('Screwdriver', 50, 3.17, 'Flat head')
    GO
    
  3. 以下语句演示,只要值是按正确顺序列出的,列的名称就是可选的。 此语法很常见,但是建议不要使用它,因为其他人了解您的代码可能会更困难。 为 Price 列指定了 NULL,因为还不知道此产品的价格。

    -- Skipping the column list, but keeping the values in order
    INSERT dbo.Products
        VALUES (75, 'Tire Bar', NULL, 'Tool for changing tires.')
    GO
    
  4. 只要在默认架构中访问和更改表,架构名称就是可选的。 由于 ProductDescription 列允许 Null 值,而且没有提供值,因此可以从语句中完全删除 ProductDescription 列的名称和值。

    -- Dropping the optional dbo and dropping the ProductDescription column
    INSERT Products (ProductID, ProductName, Price)
        VALUES (3000, '3mm Bracket', .52)
    GO
    

更新 products 表

  • 键入并执行以下 UPDATE 语句,将第二种产品的 ProductName 从 Screwdriver 更改为 Flat Head Screwdriver。

    UPDATE dbo.Products
        SET ProductName = 'Flat Head Screwdriver'
        WHERE ProductID = 50
    GO
    

课程中的下一个任务

读取表中的数据(教程)

请参阅

参考

INSERT (Transact-SQL)

UPDATE (Transact-SQL)