千家信息网

mysql导入数据出错怎么办

发表于:2024-09-22 作者:千家信息网编辑
千家信息网最后更新 2024年09月22日,本篇内容介绍了"mysql导入数据出错怎么办"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!从SQL文
千家信息网最后更新 2024年09月22日mysql导入数据出错怎么办

本篇内容介绍了"mysql导入数据出错怎么办"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

从SQL文件导入数据库经常会用到,可能是从mysqldump 的脚本恢复数据库,也可能是数据库迁移。往往这样的SQL文件里包含很多条语句,如果中途某条语句出错将会导致整个导入任务终止。遇到这种情况应该怎样处理呢?
  先准备一个演示用的SQL脚本 demo.sql
  [sql]
  SET NAMES UTF8;
  CREATE TABLE cc (
  `account_id` mediumint(9) NOT NULL AUTO_INCREMENT,
  PRIMARY KEY (`account_id`)
  )ENGINE=MyISAM DEFAULT CHARSET=utf8;
  INSERT INTO cc VALUE(1);
  INSERT INTO cc (2);
  INSERT INTO cc VALUE(3);
  将SQL文件导入到数据库test
  [plain]
  # cat demo.sql | mysql -u root test
  ERROR 1064 (42000) at line 9: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '2)' at line 1
  报告错误。从提示信息里看到,出错的语句是第9行。检查一下
  [plain]
  # tail -n +9 demo.sql | head -1
  INSERT INTO cc (2);
  9 前面的+号表示从文件头部开始计算的第9行。发现一个句法错误。用sed 替换某一行
  [plain]
  # sed -i '9s/.*/INSERT INTO cc VALUE(2);/' demo.sql
  替换完成。接着刚才出错的地方继续导入
  [plain]
  # tail -n+9 demo.sql | mysql -u root test
  看看数据库,数据都在,导入成功
  [sql]
  mysql> select * from cc;
  +------------+
  | account_id |
  +------------+
  | 1 |
  | 2 |
  | 3 |
  +------------+
  3 rows in set (0.00 sec)

"mysql导入数据出错怎么办"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

数据 数据库 文件 语句 怎么办 内容 情况 更多 知识 脚本 错误 实用 成功 学有所成 接下来 一行 任务 信息 句法 困境 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 以数据库为主营业务的上市公司 软件开发企业应收账款的特征 物联网工程网络安全方向 手机app网络安全测试 软件开发和软件测试关系 网络安全专业教育指导委员会 重庆忠县蔬菜批发软件开发 崇明区制造网络技术供应 微信小程序需要链接数据库吗 数据库工作认证 手机版逃离塔科夫连接服务器中断 网络安全事关军事成败 复制数据库 表 聚焦网络安全问题 项目使用自定义数据库连接类 专科网络技术专业升本 如何下载手机版的宝可梦服务器 网络安全小学生的画 网络安全活动总结报告美篇 网络技术月结 计算机网络技术系统组成 关于网络安全与运维的书籍 唯平台互联网科技有限公司 晗日互联网科技有限公司 计算机网络技术是计算机类 数据库查找表所在存储过程 吉林机架式服务器机箱是什么 R910服务器管理卡设置 以网络安全为主题 我国网络安全制度
0