如何向 MySQL 表中插入数据?

向 MySQL 表中插入数据是关系数据库中最基本的一项操作,也是我们在开发中经常需要执行的一项任务。本文就来详细介绍如何向 MySQL 表中插入数据。

## 1. 插入语法

向 MySQL 表中插入数据需要使用 INSERT INTO 语句,语法如下:

INSERT INTO table_name (column1, column2, column3, ...)

VALUES (value1, value2, value3, ...)

其中,table_name 是要插入数据的表名,column1, column2, column3, ... 是要插入数据的列名,VALUES 子句中是要插入的值。

## 2. 插入示例

下面我们以一个简单的表格为例进行插入操作。

创建表格的 SQL 语句如下:

CREATE TABLE student

(

id INT PRIMARY KEY,

name VARCHAR(20) NOT NULL,

gender VARCHAR(10) NOT NULL,

age INT NOT NULL,

score FLOAT NOT NULL

);

该表格包括 5 个列:id, name, gender, age, score。其中,id 列为主键,name、gender、age、score 列都不允许为空。

现在我们要向该表格中插入一条记录,内容如下:

| id | name | gender | age | score |

|----|------|--------|-----|-------|

| 1 | Tom | Male | 18 | 90.5 |

插入的 SQL 语句如下:

INSERT INTO student (id, name, gender, age, score)

VALUES (1, 'Tom', 'Male', 18, 90.5);

运行以上 SQL 语句后,我们可以在 student 表中查看到刚才插入的记录。

我们也可以插入多条记录。比如我们要插入下面这三条记录:

| id | name | gender | age | score |

|----|---------|--------|-----|-------|

| 2 | Jerry | Male | 19 | 89.2 |

| 3 | Alice | Female | 18 | 92.0 |

| 4 | Michael | Male | 20 | 87.5 |

则插入的 SQL 语句如下:

INSERT INTO student (id, name, gender, age, score)

VALUES (2, 'Jerry', 'Male', 19, 89.2),

(3, 'Alice', 'Female', 18, 92.0),

(4, 'Michael', 'Male', 20, 87.5);

运行以上 SQL 语句后,我们可以在 student 表中查看到刚才插入的记录。

## 3. 插入注意事项

### 3.1 列和值的匹配

在插入记录时,必须确保插入的列和值一一对应。如果不指定列名,则必须按照表格定义的顺序插入。如果插入的列名和列的数量不匹配,则会出现错误。

### 3.2 自增长列的处理

如果表格中有自增长列,那么在插入数据时可以省略该列,数据库会自动为该列生成一个唯一的值。比如下面这个表格:

CREATE TABLE user

(

id INT PRIMARY KEY AUTO_INCREMENT,

username VARCHAR(20) NOT NULL,

password VARCHAR(20) NOT NULL,

email VARCHAR(50)

);

在插入数据时,可以省略 id 列,比如要插入下面这个用户:

| id | username | password | email |

|----|----------|----------|------------------|

| | admin | 123456 | admin@example.com |

则插入的 SQL 语句如下:

INSERT INTO user (username, password, email)

VALUES ('admin', '123456', 'admin@example.com');

### 3.3 NULL 值的处理

如果某列允许为空,而且该列没有设置默认值,则插入该记录时可以使用 NULL 值。比如下面这个表格:

CREATE TABLE employee

(

id INT PRIMARY KEY,

name VARCHAR(20) NOT NULL,

gender VARCHAR(10),

age INT NOT NULL,

salary FLOAT NOT NULL

);

在插入数据时,可以插入 NULL 值,比如要插入下面这个员工:

| id | name | gender | age | salary |

|----|--------|--------|-----|--------|

| 1 | Alice | Female | 25 | NULL |

则插入的 SQL 语句如下:

INSERT INTO employee (id, name, gender, age, salary)

VALUES (1, 'Alice', 'Female', 25, NULL);

注意:在 MySQL 中,不能使用 = NULL 或 != NULL 来判断 NULL 值,应该使用 IS NULL 或 IS NOT NULL。

## 4. 结语

本文详细介绍了如何向 MySQL 表中插入数据。在实际开发中,插入数据是我们必须掌握的一项基本操作。在插入数据时,要注意列和值的匹配、自增长列的处理和 NULL 值的处理等细节问题。希望本文能够对大家有所帮助,也希望大家能够善用 MySQL,开发出更加出色的应用。

免责声明:本文来自互联网,本站所有信息(包括但不限于文字、视频、音频、数据及图表),不保证该信息的准确性、真实性、完整性、有效性、及时性、原创性等,版权归属于原作者,如无意侵犯媒体或个人知识产权,请来电或致函告之,本站将在第一时间处理。猿码集站发布此文目的在于促进信息交流,此文观点与本站立场无关,不承担任何责任。

数据库标签