手机版

将数据库从SQL Server数据库转换为MySQL

时间:2021-08-05 来源:互联网 编辑:宝哥软件园 浏览:

类型:视频转换大小:45.8M语言:中文评分:7.7标签页:下载现在我迁移Database Schema。

首先,利用Sybase Powerdesigner的逆向工程功能,对SQL Server数据库的物理模型进行逆向工程。具体操作是选择“文件”、“逆向引擎”,然后选择数据库,选择DBMS作为SQL Server,如图:

然后选择数据源,也就是要连接的SQL Server数据库服务器,然后选择要反转的数据库名称,例如选择WSS_Content_80如图所示:

单击确定生成物理模型图:

然后点击“数据库”菜单下的“更改当前数据库管理系统”,将当前数据库管理系统修改为MySQL 5.0。

单击确定生成MySQL的物理模型,然后单击数据库菜单下的生成数据库,生成数据库脚本文件。

下一步是手动修改生成的脚本的内容。

更换所有dbo。用null替换它

删除像创建用户这样的语句。

如果某些字符是MySQL中的关键字,它们必须与“`”(键盘上数字1左边的那个)匹配。

添加MySQL所需的存储引擎,比如每个建表语句,并保持:

ENGINE=INNODB字符集utf8 COLLATE utf8 _ general _ ci

在MySQL中运行一次生成的脚本来创建数据库。

第二,数据内容的迁移

数据内容只能通过生成INSERT语句来完成。

首先,使用SSMS的“生成脚本”功能(右键单击数据库并选择“任务”和“生成脚本”选项)为SQL Server数据库中的数据生成插入脚本。

首先,选择要迁移数据的表。在这里,我们选择所有的表:

然后单击下一步,选择将脚本保存到新的查询窗口:

单击高级选项,并在高级选项窗口中选择仅作为数据编写脚本的数据类型:

然后,“确定”和下一步将生成插入脚本文件。

修改生成的脚本文件,主要包括以下修改:

使用批量替换删除[],这与SQL Server是一致的,这在MySQL中是不使用的。

使用批量替换删除dbo。

有些词在MySQL中是关键词,需要用“`”来唤起。

Datetime类型的数据需要手动修改。默认情况下,SQL Server会生成这样一条语句,该语句无法在MySQL中解析:

CAST(0x00009EEF0000000作为日期时间)

每行增加一个;指示插入语句的结尾。这个分号在SQL Server中是不必要的,但是在MySQL中是必要的。一个简单的方法是使用高级文本编辑器(如记事本)并用替换;\r\n可以。

版权声明:将数据库从SQL Server数据库转换为MySQL是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。