SQL Server 2017从零开始学(视频教学版)
上QQ阅读APP看书,第一时间看更新

4.2.1 数据插入INSERT语句

向已创建好的数据表中插入记录,可以一次插入一条记录,也可以一次插入多条记录。插入表中的记录中的值必须符合各个字段值数据类型及相应的约束。INSERT语句基本语法格式如下:

     INSERT INTO table_name ( column_list )
     VALUES (value_list);

主要参数介绍如下:

• table_name:指定要插入数据的表名。

• column_list:指定要插入数据的那些列。

• value_list:指定每个列对应插入的数据。

提示

使用该语句时字段列和数据值的数量必须相同,value_list中的这些值可以是DEFAULT、NULL或者是表达式。DEFAULT表示插入该列在定义时的默认值;NULL表示插入空值;表达式将插入表达式计算之后的结果。

在演示插入操作之前,将数据库的名称company重新修改为test_db,语句如下:

     ALTER DATABASE company
     MODIFY NAME= test_db

准备一张数据表,这里定义名称为teacher的表,可以在test_db数据库中创建该数据表,创建表的语句如下:

     CREATE  TABLE  teacher
     (
     id       INT  NOT NULL PRIMARY KEY,
     name    VARCHAR(20)  NOT NULL ,
     birthday  DATE ,
     sex      VARCHAR(4) ,
     cellphone VARCHAR(18)
     );

执行操作后刷新表节点,即可看到新添加的teacher表,如图4-2所示。

图4-2 添加teacher表

【例4.8】向teacher表中插入一条新记录,输入语句如下。

     INSERT INTO teacher VALUES(1, '张三', '1978-02-14',
'男', '0018611') --插入一条记录
     SELECT * FROM teacher

执行语句后,结果如图4-3所示。

图4-3 向teacher表中插入一条记录

插入操作成功,可以从teacher表中查询出一条记录。

【例4.9】向teacher表中插入多条新记录,T-SQL代码如下。

     SELECT * FROM teacher
     INSERT INTO teacher
     VALUES (2, '李四', '1978-11-21','女', '0018624') ,
     (3, '王五','1976-12-05','男', '0018678') ,
     (4, '赵纤','1980-6-5','女', '0018699') ;
     SELECT * FROM teacher

执行结果如图4-4所示。

图4-4 向teacher表中插入多条记录

对比插入前后的查询结果,可以看到现在表中已经多了3条记录,插入操作成功。