Fork me on GitHub

MySQL INSERT对表中数据的操作-插入数据

MySQL INSERT:插入数据(添加数据)

数据库与表创建成功以后,需要向数据库的表中插入数据。在 MySQL 中可以使用 INSERT 语句向数据库已有的表中插入一行或者多行元组数据。

基本语法

INSERT 语句有两种语法形式,分别是 INSERT…VALUES 语句和 INSERT…SET 语句。

1) INSERT…VALUES语句

INSERT VALUES 的语法格式为:

INSERT INTO 表名 (列名1, … 列名n )

VALUES (值1… , 值n);

 

 

2) INSERT…SET语句

语法格式为:

INSERT INTO 表名

SET 列名1 = 值1,

列名2 = 值2,

此语句用于直接给表中的某些列指定对应的列值,即要插入的数据的列名在 SET 子句中指定的列名,等号后面为指定的数据,而对于未指定的列,列值会指定为该列的默认值。

由 INSERT 语句的两种形式可以看出:

  • 使用 INSERT…VALUES 语句可以向表中插入一行数据,也可以插入多行数据;

  • 采用 INSERT…SET 语句可以向表中插入部分列的值,这种方式更为灵活;

     

 

向表中的全部字段添加值

在student数据库中创建一个学生表,包含学生编号 id、学生姓名 name、学生年龄age输入的 SQL 语句和执行结果如下所示。

mysql> create table student(id int primary key auto_increment,name varchar(8),age int not null);
Query OK, 0 rows affected (0.16 sec)

 

mysql> insert into student (id,name,age)value(null,"张三",18);
Query OK, 1 row affected (0.12 sec)

mysql> insert into student (id,name,age)value(null,"李四",16);
Query OK, 1 row affected (0.08 sec)

mysql> select * from student;
+----+------+-----+
| id | name | age |
+----+------+-----+
|  1 | 张三 |  18 |
|  2 | 李四 |  16 |
+----+------+-----+
2 rows in set (0.00 sec)

 

 

向表中指定字段添加值

为表的指定字段插入数据,是在 INSERT 语句中只向部分字段中插入值,而其他字段的值为表定义时的默认值。

【实例 4】在 student表中插入一条新记录,age 值为22,输入的 SQL 语句和执行结果如下所示。

mysql> insert into student set age=22;
Query OK, 1 row affected (0.05 sec)

mysql> select * from student;
+----+------+-----+
| id | name | age |
+----+------+-----+
|  1 | 张三 |  18 |
|  2 | 李四 |  16 |
|  3 | NULL |  22 |
+----+------+-----+
3 rows in set (0.00 sec)

可以看到插入记录成功。如查询结果显示,这里的 age字段一个整数值 22。这时的 id 字段为表的主键,不能为空,系统自动为该字段插入自增的序列值。在插入记录时,如果某些字段没有指定插入值,MySQL 将插入该字段定义时的默认值。

posted @ 2020-10-15 20:03  云源  阅读(4420)  评论(0编辑  收藏  举报
湖南云源网络科技有限公司 www. ysource.cn 版权所有   ICP证:湘ICP备18004366号
  邮箱:2536201485@qq.com   CSDN博客地址:https://blog.csdn.net/qq_32885621 有事您Q我