📜  MySQL INSERT语句

📅  最后修改于: 2020-11-17 02:28:33             🧑  作者: Mango

MySQL INSERT语句

MySQL INSERT语句用于在数据库内的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示例

让我们借助多个示例来了解INSERT语句在MySQL中的工作方式。首先,使用以下命令在数据库中创建表“ 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));