1.需求:

把 一个数据库连接(如:test)中某个数据库中的某表(如:warn_message)的数据,批量复制到 另一个数据库连接(如:localhost)中某个数据库中的某表(如:warn_message)中

两个warn_message表的数据结构一致

2.实现

mysql 批量添加语句:

  insert into 表名(字段1,字段2,字段3values (字段1的值,字段1的值,字段1的值),(字段1的值,字段1的值,字段1的值)

下面的步骤就是要 组装 values 后面的 值,以达到可以批量复制的效果:

2.1 把待复制的数据 复制粘贴到 excel中

在这里插入图片描述

在这里插入图片描述

2.2 处理excel中的数据

然后根据需求修改excel中的数据,如 删除自增主键id,时间字段等特殊格式的修改的
把excel 组装成 可以批量 添加的参数

①删除id 所在列

②中文内容、时间列 两端 添加 单引号

选中中文所在的列,右键—》设置单元格格式—》选中自定义,选中如下类型,在类型中添加 单引号,点击确定:
在这里插入图片描述
在这里插入图片描述

时间所在列 处理方式相同:

在这里插入图片描述

在这里插入图片描述

③每行的首尾 添加 括号

在这里插入图片描述
在这里插入图片描述

④空值要处理成 null 或者 空的单引号

如果不处理,会报错,见下面。
在这里插入图片描述

⑤文件另存为 *.csv文件

在这里插入图片描述
在弹出的窗口中选择 是:

在这里插入图片描述

⑥以记事本方式 打开上面的 333.csv文件

在这里插入图片描述
在这里插入图片描述

发现记事本中的内容 离 目标 还差点, 多了 双引号!!!
解决方法:全局替换 “”,得到下面的内容:
在这里插入图片描述

2.3 把记事本的内容复制到 mysql 客户端工具,拼接 批量插入语句

在这里插入图片描述

执行报错:说明 空值也要进行处理。 处理成 null 或者空字符串
在这里插入图片描述

处理后的sql语句是:

INSERT INTO `warn_message`(`device_id`, `device_type`, `extend_json`, `install_place_id`, `pound_order_id`, `rational_deviation`, `real_deviation`, `overtime_duration`, `warn_type`, `deal_flag`, `deal_result`, `active_flag`, `created_user`, `created_time`, `updated_user`, `updated_time`, `warning_level`, `organization_id`, `start_time`, `end_time`, `description`, `resolver`, `third_warn_id`, `relation_user_id`) VALUES 
(1842,8,null,102,0,0,0,0,0,1,'系统自动解除预警',1,0,'2021/2/3 11:23',0,'2021/2/3 14:40',3,1047,'2021/2/3 11:23','2021/2/3 14:40',null,null,6534,null),
(1842,8,null,102,0,0,0,0,0,1,'系统自动解除预警',1,0,'2021/2/3 11:43',0,'2021/2/3 14:40',3,1047,'2021/2/3 11:43','2021/2/3 14:40',null,null,6534,null),
(1842,8,null,102,0,0,0,0,0,0,'系统自动解除预警',1,0,'2021/2/3 12:11',0,'2021/2/3 13:56',3,1047,'2021/2/3 12:11','2021/2/3 13:56',null,null,6534,null),
(1842,8,null,102,0,0,0,0,8,1,'系统自动解除预警',1,0,'2021/2/3 13:56',0,'2021/9/30 11:48',3,1047,'2021/2/3 13:56','2021/2/3 14:40','烟火',null,6534,null),
(1842,8,null,102,0,0,0,0,8,1,'系统自动解除预警',1,0,'2021/2/3 13:59',0,'2021/9/30 11:48',3,1047,'2021/2/3 13:59','2021/2/3 14:40','烟火',null,6534,null),
(1842,8,null,102,0,0,0,0,8,1,'系统自动解除预警',1,0,'2021/2/3 14:06',0,'2021/9/30 11:48',3,1047,'2021/2/3 14:06','2021/2/3 14:40','烟火',null,6534,null),
(1842,8,null,102,0,0,0,0,8,1,'系统自动解除预警',1,0,'2021/2/3 14:10',0,'2021/9/30 11:48',3,1047,'2021/2/3 14:10','2021/2/3 14:40','烟火',null,6534,null),
(1842,8,null,102,0,0,0,0,8,0,'系统自动解除预警',1,0,'2021/2/3 14:40',0,'2021/9/30 11:48',3,1047,'2021/2/3 14:40',null,'烟火',null,6534,null)

运行结果如下:
在这里插入图片描述
在这里插入图片描述
批量插入成功!!

2.4 注意点:excel中空值也要处理

excel中的数据 处理需要注意的点:
①中文和时间 都要加 单引号
空值也要处理 处理成 null 或者 空的 单引号

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐