首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将SQL脚本转换为MS mySql脚本?

如何将SQL脚本转换为MS mySql脚本?
EN

Stack Overflow用户
提问于 2011-10-19 19:27:31
回答 4查看 32.5K关注 0票数 8

我必须将客户MySql数据库架构/数据迁移到MS SQL server2008。最后,我收到了70MbSQL文件与mySQL方言是不兼容的。

代码语言:javascript
复制
DROP TABLE IF EXISTS `kladr`;
CREATE TABLE `kladr` (
  `id` int(11) NOT NULL DEFAULT '0',
  `idp` int(11) DEFAULT NULL,
...

我花了一周的时间才收到这样的文件,所以我不敢要求mySQL管理员给我发送兼容mySQL的sql。有没有办法自动将mySQL方言转换成MSSQL SERVER方言?

EN

回答 4

Stack Overflow用户

发布于 2017-12-11 20:04:47

SQLines提供的工具和服务可帮助您从MySQL向Microsoft SQL Server传输数据、转换数据库模式、视图、存储过程和函数、触发器、查询、嵌入式SQL语句和SQL脚本。

http://www.sqlines.com/online

票数 4
EN

Stack Overflow用户

发布于 2011-10-19 19:34:10

最简单的方法是获得一个转换器。有多个选项可用,但可能很难找到一个好的:有很多垃圾邮件选项可用,当然都是要花钱的。

微软有一个在线迁移手册:http://technet.microsoft.com/en-us/library/cc966396.aspx

你将需要一些mysql工具和一些mssql工具,如上面的链接所述。

添加一个简短的exerpt:

如果您查看名为“使用数据加载”的部分。您已经拥有的导出文件可能没有问题,因此您可以跳过“生成mysqldump数据提取脚本”。

现在你需要的部分是:

在SQL Query Analyzer中使用提取的脚本的

生成的脚本现在可用于创建数据库对象和插入数据。从MySQL脚本构造数据库架构的首选方法是使用SQL Server2000附带的SQL Query Analyzer工具。

可以直接从“开始”菜单或从SQL Server企业管理器内部运行SQL查询分析器。还可以通过执行isqlw实用工具从命令提示符下运行SQL查询分析器。

为了让脚本正确执行,还需要做一些额外的工作,这涉及到SQL方言的某些更改。此外,请记住遍历SQL脚本并将数据类型更改为与SQL Server兼容的类型。下图显示了从mysqldump导入的脚本,需要注意的是,该转储是一个ASCII脚本文件。

票数 2
EN

Stack Overflow用户

发布于 2011-10-19 19:40:33

有几种方法可以测试表在SQL中是否存在。这里有一种方法。

代码语言:javascript
复制
if object_id('<table>','U') is not null  drop <table>

因此,您需要将所有

代码语言:javascript
复制
DROP TABLE IF EXISTS `kladr`;

到那个语法。请注意,还有其他方法可以查看表是否也存在。

此外,MS-SQL不使用`(反引号)字符,因此您需要删除所有这些字符。但是,当前由反引号括起来的一些字段/表名称可能是保留字,在这种情况下,您需要使用带括号的fld_name分隔这些字段/表。

您可能还会遇到create table语法上的一些差异,而且基本语法也是相似的。上面的例子可以在MS-SQL中运行...

你可以使用脚本编辑,但我强烈建议使用上面Nanne建议的链接。祝好运

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7820626

复制
相关文章

相似问题

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