SQL INSERT 语句
在本教程中,您将学习如何使用 SQL 在数据库表中插入记录。
在表中插入数据
在前一章中,我们在demo数据库中创建了一个名为persons的表 . 现在是时候在我们新创建的数据库表中插入一些数据了。
INSERT INTO
语句用于在数据库表中插入新行。
语法
将数据插入表的基本语法可以通过以下方式给出:
table_name
(column1,column2,...) VALUES (value1,value2,...);这里的column1、column2、...等代表表列的名称,而value1、value2、...等表示这些列的对应值。
让我们在 persons 表中插入一些记录。
第一步:查看表结构
在添加记录之前,最好先获取有关表结构的信息。 在 MySQL 命令行上执行以下命令。 它将显示有关 persons 表中列的信息,即列名、数据类型、约束等。
您可以使用命令 DESCRIBE table_name;
在 MySQL 和 Oracle 数据库中查看任何表的列信息或结构,而在 SQL Server 中使用命令 EXEC sp_columns table_name;
(将 table_name 替换为实际表名)。
步骤 2:向表中添加记录
以下语句在 persons 表中插入一个新行。
INSERT INTO persons (name, birth_date, phone)
VALUES ('Peter Wilson', '1990-07-15', '0711-020361');
您注意到了吗,我们没有为 id
字段插入任何值? 因为,如果你记得在 创建表 章节中,id
字段被标记为 AUTO_INCREMENT
标志,它告诉 MySQL 如果未指定该字段自动分配一个值。
注意: 字符串和日期等非数字值必须始终用引号括起来,而数字值决不能用引号括起来。 此外,如果您的字符串本身包含引号,您应该使用反斜杠将其转义,例如 'Let\'s go'
。
同样,在 persons 表中插入另一行,如下所示:
INSERT INTO persons (name, birth_date, phone)
VALUES ('Carrie Simpson', '1995-05-01', '0251-031259');
以类似的方式在 persons 表中再插入一行:
INSERT INTO persons (name, birth_date, phone)
VALUES ('Victoria Ashworth', '1996-10-17', '0695-346721');
现在,如果您从 persons 表中选择记录,输出现在将如下所示:
+----+--------------------+------------+-------------+ | id | name | birth_date | phone | +----+--------------------+------------+-------------+ | 1 | Peter Wilson | 1990-07-15 | 0711-020361 | | 2 | Carrie Simpson | 1995-05-01 | 0251-031259 | | 3 | Victoria Ashworth | 1996-10-17 | 0695-346721 | +----+--------------------+------------+-------------+
我们将在下一章了解从表中选择记录的 SQL 语句。