如何在MySQL中插入多行
用户可以同时在表中添加多个行。用户可以使用INSERT语句在列中添加多个值。
INSERT语句的语法
在MySQL中添加多行数据的语法如下:
INSERT INTO table_name (col_list) VALUES (val1), (val2), (val3), … (valn);
在上述语句中:
用户首先必须在INSERT INTO关键字开始后指定要输入数据的表名。然后,用户必须在指定表名后的括号内提及所有列的名称。列的顺序应与要输入到列中的值相同。
然后,使用VALUES关键字在各个列中添加值。可以通过将值添加到列表中并用逗号分隔来实现。在MySQL中,值列表中的每个元素表示不同的行。用户需要确保每个元素中的值与在列列表中指定的列的数量相同。
MySQL插入多行限制
理论上,通过实施单个INSERT命令无法插入的值没有上限。然而,一个名为max_allowed_packet的参数限制了可以使用单个INSERT语句插入的数据的大小。如果用户尝试添加更大量的数据,MySQL将发出错误提示数据包太大,并立即结束连接。
用户可以使用以下SQL语句来检查max_allowed_packet参数的值:
SHOW VARIABLES LIKE 'max_allowed_packet';
默认情况下,该参数的值设置为1 GB。不同服务器上的值可能有所不同。用户可以执行查询来更改max_allowed_packet的值。
SET GLOBAL max_allowed_packet=desired_size;
在这里,desired_size是一个整数值,指的是允许的最大包大小(以字节为单位)。请注意,此参数不直接影响INSERT INTO … SELECT语句。用户可以使用INSERT INTO … SELECT语句添加任意多行。
MySQL INSERT语句实现添加多行的方法
让我们考虑一个示例,用户将使用INSERT查询同时向表中添加多行。
第一步是创建一个新表,其中将添加信息的行。我们在这种情况下定义了一个demotable来实现INSERT查询。
CREATE TABLE demotable(
StudID int, S_Name varchar(100), S_Course varchar (50) );
一旦用户定义了要实现查询的表,用户可以继续进行下一步,实现INSERT查询以在demotable中添加多行数据。
INSERT INTO demotable VALUES (1, 'AMAN', 'Mathematics'),
(2, 'HARSH', 'Mathematics'),
(3, 'RAHUL', 'Computer Science'),
(4, 'ROHIT', 'English'),
(5, 'VIJAY', 'Science');
最后,您可以通过实现以下SELECT语句来验证数据是否成功插入到表中:
SELECT * FROM demotable;
在本教程中,您已经学会使用INSERT语句向表中添加多行。