mysql免安装迁移_MYSQL迁移到PostgreSQL

友情推荐开始

ALSQL是一个通用的数据库查询工具。它支持多种主流数据库、支持直连模式、有统一的使用体验、有强大的过滤功能、有更多数据展示模式、面向项目、为逆向而优化、并且免安装和免费。下载体验及更多图文介绍:http://www.alsql.com

友情推荐结束

最近有一个MYSQL库要迁到PostgreSQL,找了两天也没找到合适又免费的工具,只好自己手工处理。这是这次MYSQL->PostgreSQL数据库转换过程中所做的记录,供参考。

TABLE

-----

1、`要去掉

2、int(11) -> int

3、AUTO_INCREMENT -> serial,不能再指定类型(如:int)

4、ENGINE=InnoDB DEFAULT CHARSET=utf8要去掉

5、UNIQUE KEY DIRSVRDID (DIRSVR,DID) -> UNIQUE(DIRSVR,DID),约束名可以没有,KEY关键字不允许

6、COMMENT要特殊处理,移到Create Table结构体外 -> COMMENT ON TABLE "table_name"."field_name" IS 'xxx';

7、datatime -> timestamp

8、timestamp默认值不能是0,0000-00-00 00:00:00 -> 1970-01-01 00:00:00

9、DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP -> DEFAULT now()

10、 CHARACTER SET gbk要去掉

11、double -> double precision

VIEW

----

1、`要去掉

2、ALGORITHM=UNDEFINED DEFINER=root@localhost SQL SECURITY DEFINER 要去掉

3、DELIMITER ;;要去掉

OTHER

-----

1、PostgreSQL没有PROCEDURE关键字,存储过程要改写

2、这种UPDATE语句:

UPDATE BRIDGE_USERGROUPGRANT a,TEMP_PERMISSION_INFO_IAVM b

SET

b.GRANT_HISTORY=a.GRANT_HISTORY,

b.GRANT_MONITOR=a.GRANT_MONITOR,

b.GRANT_PTZ=a.GRANT_PTZ,

b.GRANT_ALARM=a.GRANT_ALARM,

b.GRANT_RECORD=a.GRANT_RECORD,

b.GRANT_SNAPSHOT=a.GRANT_SNAPSHOT,

b.GRANT_DEVICESET = a.GRANT_DEVICESET,

b.GRANT_RESERVED1 = a.GRANT_RESERVED1,

b.GRANT_RESERVED2 = a.GRANT_RESERVED2

WHERE a.DEVICEID = b.NODEID

AND a.LOCATIONINDEX = b.NODEID2

AND a.DIRECTORYSERVERID = b.DIRECTORYSERVERID

AND b.NodeType <> 0

AND a.UserGroupID= AUSERGROUPID;

要改写为:

UPDATE TEMP_PERMISSION_INFO_IAVM

SET

GRANT_HISTORY=a.GRANT_HISTORY,

GRANT_MONITOR=a.GRANT_MONITOR,

GRANT_PTZ=a.GRANT_PTZ,

GRANT_ALARM=a.GRANT_ALARM,

GRANT_RECORD=a.GRANT_RECORD,

GRANT_SNAPSHOT=a.GRANT_SNAPSHOT,

GRANT_DEVICESET = a.GRANT_DEVICESET,

GRANT_RESERVED1 = a.GRANT_RESERVED1,

GRANT_RESERVED2 = a.GRANT_RESERVED2

from BRIDGE_USERGROUPGRANT a,TEMP_PERMISSION_INFO_IAVM b

WHERE a.DEVICEID = b.NODEID

AND a.LOCATIONINDEX = b.NODEID2

AND a.DIRECTORYSERVERID = b.DIRECTORYSERVERID

AND b.NodeType <> 0

AND a.UserGroupID= AUSERGROUPID;

友情推荐开始

ALSQL是一个通用的数据库查询工具。它支持多种主流数据库、支持直连模式、有统一的使用体验、有强大的过滤功能、有更多数据展示模式、面向项目、为逆向而优化、并且免安装和免费。下载体验及更多图文介绍:http://www.alsql.com

友情推荐结束

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值