PowerDesigner设计MySQL表结构转SQLServer问题

0x00 问题背景

用设计PowerDesigner设计好了MYSQL的表结构,但是某个系统采用的是SQLServer数据库,也需要用到这些表,那么如何省时省力地迁移到SQLServer数据库呢,笔者尝试了各种各样的方式,最后发现方法十分简单有些舍近求远了。

0x01 使用Navicat

Navicat支持将各种数据库结构相互迁移,以前有用Navicat将SqlLite数据库转换成MySQL数据库,所以应该也是支持MySQL转SQLServer的。
不过,当下载新版的使用后,突然感觉没那么熟悉了,一下找不到入口,可能是打开的姿势不对。
而且以前使用Navicat进行数据库转移时也遇到过表结构属性丢失的问题,所以也不抱太大希望。

0x02 使用Microsoft SQL Server Migration Assistant for MySQL

下载安装
SSMAforMySQL_8.0.0.msi
mysql-connector-odbc-5.3.12-winx64.msi
源数据结构存放在MySQL的test数据库里比如为表a,转换后到了schemas.test.a处,好吧我对SQLServer数据库不熟,只会操作dbo.a,怎么把表a弄到dbo里是个问题。。。狗带!
在这里插入图片描述

0x03 PowerDesigner的强悍

一开始也考虑过直接使用PowerDesigner生成的SQL语句建表,而且也支持将MySQL模式切换为SQLServer模式,如下图:
在这里插入图片描述
在这里插入图片描述
虽然我安装的是SQLServer 2017,不过向下是兼容的
预览SQL语句变成了SQLServer语法
在这里插入图片描述
实际上一开始就是这么做的,不过把这些SQL语句复制到HeiDiSQL里运行,会报如下错误:
"go"附近有语法错误
在这里插入图片描述
那时在Microsoft SQL Server Management Studio 17数据库管理工具里运行也是这样的错误,打开的姿势还是不对,所以才去寻求上面提到的方法的。
后来在一同胡搞下,竟然顺利执行了!太神奇了 囧
如下图,新建查询编辑器窗口,然后执行上面的一堆乱七八糟的建表代码,Bingo~:
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值