SQLite到MySQL的奇怪错误#1064
我正在将SQLite数据库转换为MySQL,以便将其导入PHPMyAdmin。 这应该是直截了当的。我将其导出到转储,更改了自动增量,并将所有双引号更改为反勾号。结果文件的开头是这样的:SQLite到MySQL的奇怪错误#1064,mysql,sqlite,phpmyadmin,migration,mysql-error-1064,Mysql,Sqlite,Phpmyadmin,Migration,Mysql Error 1064,我正在将SQLite数据库转换为MySQL,以便将其导入PHPMyAdmin。 这应该是直截了当的。我将其导出到转储,更改了自动增量,并将所有双引号更改为反勾号。结果文件的开头是这样的: DROP TABLE IF EXISTS `chars`; CREATE TABLE chars( charid INTEGER PRIMARY KEY AUTO_INCREMENT, charact
DROP TABLE IF EXISTS `chars`;
CREATE TABLE chars(
charid INTEGER PRIMARY KEY AUTO_INCREMENT,
character TEXT
);
INSERT INTO `chars` VALUES(3,'a');
INSERT INTO `chars` VALUES(4,'b');
。。。
尝试导入到PHPMyAdmin时,会抛出此错误
缩进行后是否有太多空间?我将“格式”选项保留为“SQL”,将SQL兼容模式保留为“无”,并勾选了“不要对零值使用自动增量”。
它将在django web应用程序中使用
字符
是一个字符。我打赌这就是原因
使用不同的列名(首选),或使用反勾号:
`CHARACTER` TEXT
字符
是一个字符。我打赌这就是原因
使用不同的列名(首选),或使用反勾号:
`CHARACTER` TEXT
如果可能,一定要更改列的名称。。。如果你能给它起个不同的名字,那就不值得麻烦了。它成功了!谢谢事实证明,“CHARACTER”和“CHAR”在MySQL中都是保留关键字,但在SQLite中不是。@pekka因此需要一个自动过滤器来检测问题中的MySQL保留字-
CHARACTER,尤其是DESC
。@Michael是的!或者一种更容易本地化的关闭机制。如果可能,一定要更改列的名称。。。如果你能给它起个不同的名字,那就不值得麻烦了。它成功了!谢谢事实证明,“CHARACTER”和“CHAR”在MySQL中都是保留关键字,但在SQLite中不是。@pekka因此需要一个自动过滤器来检测问题中的MySQL保留字-CHARACTER,尤其是DESC
。@Michael是的!或一种更容易局部关闭的机制。