首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将另一个sql文件中的数据加载到主sql文件中?- MYSQL

如何将另一个sql文件中的数据加载到主sql文件中?- MYSQL
EN

Database Administration用户
提问于 2020-06-23 13:08:55
回答 1查看 2.2K关注 0票数 0

我正在尝试处理脚本dbcreate_f.sql和dbload_f.sql来创建并将数据加载到脚本解决方案6.sql中。

我是在MYSQL命令行中这样做的。

在解决方案6. two中,我有两个语句:

代码语言:javascript
复制
source dbcreate_f.sql;
source dbload_f.sql;

这两个文件包含用于创建表和将数据插入到这些表中的数据。这两个文件很好-没有错误。

不过,我遇到的问题是,当我在MYSQL命令行中运行实际的解决方案6.sql脚本时。

我的步骤如下:

代码语言:javascript
复制
tee solution6.rpt; 
source solution6.sql;

但是,当脚本在命令行中处理时,每次试图将数据插入到每个tabe中时,我都会收到此错误消息:

代码语言:javascript
复制
ERROR 1146 (42S02): Table 'bh576.AIRLINE' doesn't exist 

我在mysql研讨会上运行了dbcreate_f.sqldbload_f.sql脚本,它们运行得非常完美。此问题仅发生在命令行接口中。

EN

回答 1

Database Administration用户

发布于 2020-06-23 14:57:18

可能性#1

您需要检查该表是否损坏或损坏。

请运行以下命令:

代码语言:javascript
复制
USE bh576
SHOW TABLES LIKE 'AIRLINE';
SHOW CREATE TABLE AIRLINE \G

前2行将验证AIRLINE.frm的存在

SHOW CREATE TABLE AIRLINE \G将伸出援手,尝试检索AIRLINE.frm元数据。如果此命令通过向您提供该错误而发出抱怨

代码语言:javascript
复制
ERROR 1146 (42S02): Table 'bh576.AIRLINE' doesn't exist

然后,该表根据其对InnoDB数据字典的附件而被打破。

如果您每次都在MySQL工作室工作,那么损坏的表就不是问题了。

可能性#2

你需要确保你站在一个数据库里。

可能没有在dbcreate_f.sql脚本中设置目标数据库。

在运行脚本之前,运行以下命令:

代码语言:javascript
复制
mysql> SELECT database();

这将返回要加载的数据库的名称。

如果这回到NULL时,只需在运行之前更改为目标数据库

代码语言:javascript
复制
USE mydb
source dbcreate_f.sql
source dbload_f.sql
票数 1
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/269717

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档