利用Navicat向MySQL数据库中批量插入多条记录的方法

利用Navicat向MySQL数据库中批量插入多条记录的方法:

1、执行包含多条记录的SQL脚本

当VALUES后面的值与表中的字段相比,缺少某些字段时,可采用指定相应的字段名的方式批量插入数据:

INSERT INTO `tb_dealrecord` (`dealTime`, `userName`, `eleCommName`, `area`, `productCategory`, `productBrand`, `productType`, `amount`, `unitPrice`, `totalPrice`, `orderID`) VALUES
('2020-03-11 18:00:00', '河南工程学院0', '郑州网航科技有限公司0', '河南省省直0', '椅凳类0', '澳舒健0', 'M-843 办公椅0', '1', '1380', '4140', 'WSCG19171737156C7B35EE'),
('2020-03-11 18:00:01', '河南工程学院1', '郑州网航科技有限公司1', '河南省省直1', '椅凳类1', '澳舒健1', 'M-843 办公椅1', '2', '1380', '4140', 'WSCG19171737156C7B35EE'),
('2020-03-11 18:00:02', '河南工程学院2', '郑州网航科技有限公司2', '河南省省直2', '椅凳类2', '澳舒健2', 'M-843 办公椅2', '3', '1380', '4140', 'WSCG19171737156C7B35EE'),
('2020-03-11 18:00:03', '河南工程学院3', '郑州网航科技有限公司3', '河南省省直3', '椅凳类3', '澳舒健3', 'M-843 办公椅3', '4', '1380', '4140', 'WSCG19171737156C7B35EE'),
('2020-03-11 18:00:04', '河南工程学院4', '郑州网航科技有限公司4', '河南省省直4', '椅凳类4', '澳舒健4', 'M-843 办公椅4', '5', '1380', '4140', 'WSCG19171737156C7B35EE'),
('2020-03-11 18:00:05', '河南工程学院5', '郑州网航科技有限公司5', '河南省省直5', '椅凳类5', '澳舒健5', 'M-843 办公椅5', '6', '1380', '4140', 'WSCG19171737156C7B35EE'),
('2020-03-11 18:00:06', '河南工程学院6', '郑州网航科技有限公司6', '河南省省直6', '椅凳类6', '澳舒健6', 'M-843 办公椅6', '7', '1380', '4140', 'WSCG19171737156C7B35EE'),
('2020-03-11 18:00:07', '河南工程学院7', '郑州网航科技有限公司7', '河南省省直7', '椅凳类7', '澳舒健7', 'M-843 办公椅7', '8', '1380', '4140', 'WSCG19171737156C7B35EE'),
('2020-03-11 18:00:08', '河南工程学院8', '郑州网航科技有限公司8', '河南省省直8', '椅凳类8', '澳舒健8', 'M-843 办公椅8', '9', '1380', '4140', 'WSCG19171737156C7B35EE'),
('2020-03-11 18:00:09', '河南工程学院9', '郑州网航科技有限公司9', '河南省省直9', '椅凳类9', '澳舒健9', 'M-843 办公椅9', '10', '1380', '4140', 'WSCG19171737156C7B35EE')

或者,当VALUES后面的值与表中的字段一一对应而不缺少时,可省略字段的说明,使用下面的SQL代码插入数据:

INSERT INTO `tb_dealrecord` VALUES ('3', '2020-03-11 18:00:00', '河南工程学院0', '郑州网航科技有限公司0', '河南省省直0', '椅凳类0', '澳舒健0', 'M-843 办公椅0', '1', '1380', '4140', 'WSCG19171737156C7B35EE');
INSERT INTO `tb_dealrecord` VALUES ('4', '2020-03-11 18:00:01', '河南工程学院1', '郑州网航科技有限公司1', '河南省省直1', '椅凳类1', '澳舒健1', 'M-843 办公椅1', '2', '1380', '4140', 'WSCG19171737156C7B35EE');
INSERT INTO `tb_dealrecord` VALUES ('5', '2020-03-11 18:00:02', '河南工程学院2', '郑州网航科技有限公司2', '河南省省直2', '椅凳类2', '澳舒健2', 'M-843 办公椅2', '3', '1380', '4140', 'WSCG19171737156C7B35EE');
INSERT INTO `tb_dealrecord` VALUES ('6', '2020-03-11 18:00:03', '河南工程学院3', '郑州网航科技有限公司3', '河南省省直3', '椅凳类3', '澳舒健3', 'M-843 办公椅3', '4', '1380', '4140', 'WSCG19171737156C7B35EE');
INSERT INTO `tb_dealrecord` VALUES ('7', '2020-03-11 18:00:04', '河南工程学院4', '郑州网航科技有限公司4', '河南省省直4', '椅凳类4', '澳舒健4', 'M-843 办公椅4', '5', '1380', '4140', 'WSCG19171737156C7B35EE');
INSERT INTO `tb_dealrecord` VALUES ('8', '2020-03-11 18:00:05', '河南工程学院5', '郑州网航科技有限公司5', '河南省省直5', '椅凳类5', '澳舒健5', 'M-843 办公椅5', '6', '1380', '4140', 'WSCG19171737156C7B35EE');
INSERT INTO `tb_dealrecord` VALUES ('9', '2020-03-11 18:00:06', '河南工程学院6', '郑州网航科技有限公司6', '河南省省直6', '椅凳类6', '澳舒健6', 'M-843 办公椅6', '7', '1380', '4140', 'WSCG19171737156C7B35EE');
INSERT INTO `tb_dealrecord` VALUES ('10', '2020-03-11 18:00:07', '河南工程学院7', '郑州网航科技有限公司7', '河南省省直7', '椅凳类7', '澳舒健7', 'M-843 办公椅7', '8', '1380', '4140', 'WSCG19171737156C7B35EE');
INSERT INTO `tb_dealrecord` VALUES ('11', '2020-03-11 18:00:08', '河南工程学院8', '郑州网航科技有限公司8', '河南省省直8', '椅凳类8', '澳舒健8', 'M-843 办公椅8', '9', '1380', '4140', 'WSCG19171737156C7B35EE');
INSERT INTO `tb_dealrecord` VALUES ('12', '2020-03-11 18:00:09', '河南工程学院9', '郑州网航科技有限公司9', '河南省省直9', '椅凳类9', '澳舒健9', 'M-843 办公椅9', '10', '1380', '4140', 'WSCG19171737156C7B35EE');

2、利用存储过程

创建一个存储过程:

DELIMITER //
DROP PROCEDURE IF EXISTS INIT_DEMO300_DA;//如果INIT_DEMO300_DA存在就删除,在实际运行中要删除注释
 CREATE PROCEDURE INIT_DEMO300_DA()
    BEGIN
    DECLARE n int DEFAULT 2000000;
        WHILE(n<2000070) DO
            INSERT INTO user(userid,wincount,losecount,drawcount,escapecount,score,gamelevel,type) VALUES(n,FLOOR(1+(RAND()*6)),FLOOR(1+(RAND()*6)),FLOOR(1+(RAND()*6)),0,FLOOR(1000+(RAND()*100)),FLOOR(10+(RAND()*6)),21);   //FLOOR(1+(RAND()*6))  mysql的随机数生成
        set n = n + 1;
        END WHILE;
   END //
DELIMITER ;
 
call INIT_DEMO300_DA();

如果想要n从0开始,只需要将  DECLARE n int DEFAULT 2000000; 这句sql的 2000000 改成0即可。

注意:在实际运行中要删除注释!

原文地址:https://www.cnblogs.com/rainbow70626/p/12483759.html