![](/img/trans.png)
[英]I have exported a Mysql Database, and am having syntax issues importing to a newer version
[英]I have an older .sql file (exported from 5.0.45) I am trying to import into a newer version of MySQL via phpMyAdmin. Receiving errors
收到以下错误消息:
错误Static分析:
分析时发现1个错误。
此选项与“AUTO_INCREMENT”冲突。 (在 position 692 的“AUTO_INCREMENT”附近)SQL 查询:
-- phpMyAdmin SQL Dump -- version 2.8.2.4 -- http://www.phpmyadmin.net -- -- Host: localhost:3306 -- Generation Time: Mar 23, 2020 at 03:58 PM -- Server version: 5.0.45 -- PHP 版本:5.2.3 -- -- 数据库: weir-jones
-- -- -------------------------- ------------------ -- -- 表categories
的表结构 -- CREATE TABLE categories
( number
int(11) NOT NULL auto_increment, section
varchar(255) NOT NULL, parent_id
varchar(10) NOT NULL, title
varchar(200) NOT NULL, type
varchar(255) NOT NULL, content
text NOT NULL, display_order
int(11) NOT NULL, PRIMARY KEY( number
))引擎=MyISAM AUTO_INCREMENT=126 默认字符集=utf8 AUTO_INCREMENT=126
MySQL 说:文档
============================================
我尝试过使用所有兼容模式导入。 没运气。
旧数据库已消失,无法再次导出。
任何帮助,将不胜感激。
布伦丹
如果你要求1046 No database selected
那么就是这个意思。 您从没有USE xxx
的数据库中导出了一个表。
所以我建议尝试在数据库中导入它或在 SQL 文件的顶部添加USE
子句。
另一件事:如果您在 Stackoverflow 上提出问题,请务必阅读“格式规则”。 这意味着您可以组织您的问题。 实际上很难阅读您有什么错误。 使用强调、代码块和诸如此类的东西:
CREATE table_blub
col1 CHAR(120) NOT NULL,
col2 INT(5)...
这样,某人可以更好地阅读什么是代码,什么是错误,当然还有什么是实际问题。
Eurobetics 是正确的,这是因为 .sql 文件没有指定要使用的数据库。 没问题,您可以在新服务器上创建数据库并将文件导入其中。 由于您是通过 phpMyAdmin 导入的,因此首先使用左侧导航区域中的“新建”文本创建一个新数据库(您不需要在其中放置任何表格)。 创建数据库后,phpMyAdmin 会将您置于数据库结构页面。 (如果您在创建数据库后碰巧离开或返回,只需单击导航窗格中的现有数据库)。 查看顶行的选项卡并在此处使用“导入”选项卡(或将.sql 文件拖放到此处)。
在该数据库页面内告诉 phpMyAdmin 您要专门导入该数据库,而如果您在主页上,则“导入”按钮未附加到任何特定数据库,这会导致您的错误。
从技术上讲,您可以添加 SQL 命令来创建数据库并将数据库使用到 .sql 文件中,但在这种情况下,这似乎不需要它,只会为您做更多的工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.