MySQL 如何向MySQL表中插入新行?

MySQL 如何向MySQL表中插入新行?

MySQL是一个关系型数据库管理系统,它可以方便地管理数据,但在使用数据库时,我们经常需要向表中插入新行。本篇文章将介绍如何使用MySQL中的INSERT语句向表中插入新数据。

阅读更多:MySQL 教程

插入新行的基本语法

下面是向MySQL表中插入新行的基本语法:

INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...);

其中,table_name是要插入数据的表名,括号中的column1, column2, column3, ...是表中的列名,用逗号分隔;VALUES后面的括号中是对应列的值,也用逗号分隔。注意,每个值都必须与列名一一对应。

例如,我们有一个名为users的表,它有三列:idnameage。我们要向该表中插入一个新行,其中id为1,name为”John”,age为25。那么插入的语句应该是这样的:

INSERT INTO users (id, name, age)
VALUES (1, 'John', 25);

插入多行数据

除了一次只能插入一行的情况外,我们还可以使用一条INSERT语句一次性插入多行数据。多行数据的语法格式与单行数据基本相同,只需要在VALUES后面添加多个括号,每个括号表示一行数据。

例如,我们要向users表中插入两个新行,一个是id为2,name为”Bob”,age为30;另一个是id为3,name为”Linda”,age为28。那么插入的语句应该是这样的:

INSERT INTO users (id, name, age)
VALUES (2, 'Bob', 30),
       (3, 'Linda', 28);

插入从另一个表中选择的数据

有时候我们需要从另一个表中选择一些数据,并将这些数据插入新表中。此时,我们可以使用INSERT SELECT语句。

下面是INSERT SELECT语句的基本语法:

INSERT INTO table_name (column1, column2, column3, ...)
SELECT column1, column2, column3, ...
FROM other_table_name
WHERE ...

其中,table_name是要插入数据的表名,括号中的column1, column2, column3, ...是新表的列名,用逗号分隔;SELECT语句中的column1, column2, column3, ...是从另一个表中选择的列名,同样用逗号分隔;FROM后面的other_table_name是另一个表的名称,WHERE用于限制选择的行。

例如,我们有一个名为employees的表,它有三列:idnameage。我们要将nameage这两列数据插入到users表中。那么插入的语句应该是这样的:

INSERT INTO users (name, age)
SELECT name, age
FROM employees
WHERE age > 25;

插入默认值

有时候我们想要将表中某些列的值设为默认值,此时可以使用INSERT语句的默认值功能,语法如下:

INSERT INTO table_name
DEFAULT VALUES;

例如,我们有一个名为books的表,它有三列:idtitleauthor。我们要向该表中插入一行数据,其中id为自增长字段,我们可以使用以下语句:

INSERT INTO books DEFAULT VALUES;

结论

插入新行是MySQL中最常用的操作之一,本篇文章介绍了插入新行的基本语法,包括单行数据和多行数据的插入方式,还介绍了如何从另一个表中选择数据并插入到新表中,以及如何使用默认值功能。熟练掌握这些语法,能够大大提高我们使用MySQL的效率。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程