MySQL插入语句
MySQL插入语句用于在数据库中的MySQL表中存储或添加数据。我们可以使用单个查询以两种方式插入记录:
- 在单个行中插入记录
- 在多个行中插入记录
语法:
以下是将单个记录插入到MySQL表中的 SQL INSERT INTO 命令的通用语法:
INSERT INTO table_name ( field1, field2,...fieldN )
VALUES
( value1, value2,...valueN );
在上述语法中,我们首先要指定表名和以逗号分隔的列的列表。第二,我们在VALUES子句后提供与列名对应的值的列表。
注意:字段名是可选的。如果我们想指定部分值,则字段名是必需的。它还确保列名和值应该是相同的。此外,列和对应的值的位置必须相同。
如果我们想要在单个命令中插入 多个记录 ,请使用以下语句:
INSERT INTO table_name VALUES
( value1, value2,...valueN )
( value1, value2,...valueN )
...........
( value1, value2,...valueN );
在上述语法中,所有行都应该在值字段中用逗号分隔。
MySQL INSERT 示例
让我们通过多个示例来了解MySQL中的INSERT语句的工作方式。首先,使用以下命令在数据库中创建一个名为“People”的表:
CREATE TABLE People(
id int NOT NULL AUTO_INCREMENT,
name varchar(45) NOT NULL,
occupation varchar(35) NOT NULL,
age int,
PRIMARY KEY (id)
);
1. 如果我们想要存储所有字段的单个记录,使用以下语法:
INSERT INTO People (id, name, occupation, age)
VALUES (101, 'Peter', 'Engineer', 32);
2. 如果我们想要存储多条记录,可以使用以下语句,我们可以选择指定所有字段名或不指定任何字段。
INSERT INTO People VALUES
(102, 'Joseph', 'Developer', 30),
(103, 'Mike', 'Leader', 28),
(104, 'Stephen', 'Scientist', 45);
3. 如果我们想要存储记录而不提供全部字段,我们使用以下 部分字段 语句。在这种情况下,指定字段名称是必需的。
INSERT INTO People (name, occupation)
VALUES ('Stephen', 'Scientist'), ('Bob', 'Actor');
在下面的输出中,我们可以看到所有的INSERT语句已成功执行并将值正确存储在表中。
我们可以使用以下语法来显示 People 表的记录:
mysql> SELECT * FROM People;
我们将得到以下输出:
将日期插入MySQL表中:
我们也可以使用INSERT STATEMENT将日期添加到MySQL表中。MySQL提供了多种数据类型以存储日期,如DATE、TIMESTAMP、DATETIME和YEAR。MySQL中日期的默认格式为YYYY-MM-DD。
此格式具有以下描述:
- YYYY: 表示四位数年份,如2020年。
- MM: 表示两位数月份,如01、02、03和12。
- DD: 表示两位数日期,如01、02、03和31。
以下是在MySQL表中插入日期的基本语法:
INSERT INTO table_name (column_name, column_date) VALUES ('DATE: Manual Date', '2008-7-04');
如果我们想要在mm/dd/yyyy格式中插入日期,则需要使用下面的语句:
INSERT INTO table_name VALUES (STR_TO_DATE(date_value, format_specifier));