应客户要求,要做如题的工作,应该怎么去做呢?做的过程中应该注意些什么?
大家能不能把自己的经验说一下,而不是发一个很长的网页链接,小弟顿首拜谢。先举例说下我目前的疑问:
1。Postgresql从来没用过,数据是用.sql或者.csv格式的文件导出以后,直接导入mysql就可以了吗?
2。php里面是不是只要把pg_开头的函数换成mysql对应函数就可以了?有什么需要特别注意的吗?(比较常见的)
大家能不能把自己的经验说一下,而不是发一个很长的网页链接,小弟顿首拜谢。先举例说下我目前的疑问:
1。Postgresql从来没用过,数据是用.sql或者.csv格式的文件导出以后,直接导入mysql就可以了吗?
2。php里面是不是只要把pg_开头的函数换成mysql对应函数就可以了?有什么需要特别注意的吗?(比较常见的)
主键、外键、约束、SP、TRIGGER等等要重新建立;
2、不是,要按照MYSQL的语法格式、函数等等重新建立。
能不能所以说具体做法,好像百度到的都是mysql到PostgreSQL的做法
现在手头还没有.sql文件,只有一些数据库设计时的create语句。
pg_dump -D -h localhost -U postgres -Z -b MyDB> D:\DataBackUp\pgDB.bak 回车先将表中数据导出来再修改
那就直接执行这些SQL文件,然后把数据从PSQL中导出,可以导成CSV文件,然后再导入。不过要小心你的 数据库设计时的create语句 是否和你的数据库中实际情况一致。比如有人改了数据库但并没有去做文档的更新。
STORAGE(INITIAL 512K NE' at line 30
CREATE TABLE clinic_list
(
......
......
USING INDEX TABLESPACE INDX LOGGING PCTFREE 10
STORAGE(INITIAL 512K NEXT 128K MINEXTENTS 1 MAXEXTENTS UNLIMITED)
)
TABLESPACE HELIOS LOGGING PCTFREE 10
STORAGE(INITIAL 5M NEXT 128K MINEXTENTS 1 MAXEXTENTS UNLIMITED) MONITORING
;
COMMENT ON TABLE clinic_list IS 'dental_clinic_table'
;出错的地方应该是在这,中间字段的定义省略了。
话说那个PostgreSQL的sql语句都没看出来是把哪个字段作为索引啊,默认主键做索引吗?
因为在这一句里面没看到字段名啊。
USING INDEX TABLESPACE INDX LOGGING PCTFREE 10
这两句删除。STORAGE(INITIAL 512K NEXT 128K MINEXTENTS 1 MAXEXTENTS UNLIMITED)