MySQLINSERT对表中数据的操作-插入数据

  • 格式:pdf
  • 大小:67.05 KB
  • 文档页数:2

MySQLINSERT对表中数据的操作-插⼊数据

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 将

插⼊该字段定义时的默认值。