【数据库】+Navicat 批量插入数据/编写储存过程/函数

一、新建函数

 

二、编写函数

   #Routine body goes here...
    
    # 在这里编写你需要执行的sql语句即可
    # step1、创建一个循环变量i(默认值为1)
    DECLARE i INT DEFAULT 1; 
    # step2、循环params1次
    WHILE i < params1 DO   
        # step3、循环插入数据
       INSERT INTO `test`.`test1`(`id`, `name`, `age`, `addr`) VALUES (i, CONCAT('name',i), 2, '2');
       SET i =  i + 1;
   END WHILE; 

 

函数编写完成后记得保存

三、运行函数

 

 

 

 

 

 

 

 

四、常见问题

4.1、执行成功 但数据没有插入进去

断开数据库重新连接

 

4.2、This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its

在 MySQL 中创建函数时出现这种错误的解决方法:

1、在 MySQL 数据库中执行以下语句,临时生效,重启后失效

set global log_bin_trust_function_creators=TRUE;

2、在配置文件 my.ini 的 [mysqld] 配置,永久生效

log_bin_trust_function_creators=1

posted @ 2022-07-21 23:33  淡怀  阅读(1637)  评论(0编辑  收藏  举报