Navicat导出查询结果为sql文件时没有表名
程序员文章站
2022-07-16 17:11:12
...
起因
- 需要从市平台导出某个区的用户信息
- 查询语句
SELECT
ui.*
FROM
user_info ui,
hzz3.sm_user su
WHERE
ui.id = su.ID
AND su.region_id LIKE '120111%'
通过导出结果为sql文件
结果中表名为空:
问题原因
在于上图的源为空,所以导出的sql语句中的表名为空
解决方法
- 保存查询语句并命名为表名的名称
- 导出结果:选择导出已保存的查询
- 此时源名称即为保存查询的名称
结果:
更好得解决方法
方法一
- 在命令行下使用一对SQL语句完成该操作:
- 导出查询结果:
Select语句 into outfile '保存路径+文件名';
- 导入查询结果:
load data local infile '保存路径+文件名' into table 表明 character set utf8;
方法二:
- 导出查询结果:使用MySQL自带的转存数据库工具musqldump
- 命令行进入musqldump,使用语句
mysqldump -u用户名 -p -c --default-character-set=字符集 数据库名 数据表 --where="查询条件" > 保存路径和文件名
- 导入查询结果:
mysql -u用户名 -p -c --default-character-set=字符集 数据库名 < 保存路径和文件名