从 MSSQL 迁移到 MYSQL 错误 1064 MYSQL Workbench
Posted
技术标签:
【中文标题】从 MSSQL 迁移到 MYSQL 错误 1064 MYSQL Workbench【英文标题】:Migrating from MSSQL to MYSQL error 1064 MYSQL Workbench 【发布时间】:2015-10-28 04:53:36 【问题描述】:我目前正在准备使用 mysql 工作台从 MSSQL 迁移到 MYSQL。
我收到的错误如下。
ERROR: Error executing 'CREATE TABLE IF NOT EXISTS `dbo`.`VendorGTG` (
`VID` INT NOT NULL COMMENT '',
`Attending` TINYINT(1) NULL DEFAULT 0 COMMENT '',
`Name1` VARCHAR(50) NULL COMMENT '',
`Name2` VARCHAR(50) NULL COMMENT '',
`Inserted` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP COMMENT '',
`NameTag` TINYINT(1) NULL DEFAULT 0 COMMENT '',
PRIMARY KEY (`VID`) COMMENT '')'
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 'COMMENT '')' at line 8.
SQL Error: 1064
【问题讨论】:
@TTeeple 在建议进行此类编辑之前,请仔细阅读问题。这个问题确实与 SQL Server 有关。 @DavidG 我会这么说。 OP 正在从 SQL Server 迁移,但有问题的错误与 MySQL 相关。 @TTeeple 然而发布的代码是 SQL Server 语法。无论哪种方式,都不能保证删除标签的编辑建议。 @DavidGCOMMENT, TINYINT(1)
,将所有列括在引号中,这一切都对我来说是 MySQL 语法。
@TTeeple 因为它只是从 SQL Server 语法部分转换而来。检查我的答案。
【参考方案1】:
MySQL 没有 SQL Server 之类的架构,因此请从您的代码中删除它:
CREATE TABLE IF NOT EXISTS VendorGTG (
`VID` INT NOT NULL COMMENT '',
`Attending` TINYINT(1) NULL DEFAULT 0 COMMENT '',
`Name1` VARCHAR(50) NULL COMMENT '',
`Name2` VARCHAR(50) NULL COMMENT '',
`Inserted` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP COMMENT '',
`NameTag` TINYINT(1) NULL DEFAULT 0 COMMENT '',
PRIMARY KEY (`VID`) COMMENT '')
【讨论】:
【参考方案2】:问题在于COMMENT ''
- 只需删除所有出现的情况。随时在此错误下发表评论http://bugs.mysql.com/bug.php?id=77910
我们正在努力修复它。
【讨论】:
以上是关于从 MSSQL 迁移到 MYSQL 错误 1064 MYSQL Workbench的主要内容,如果未能解决你的问题,请参考以下文章
从 MSSQL 迁移到 postgresql 或 mysql [关闭]