代码拉取完成,页面将自动刷新
将Mysql的建表脚本转换为PostgreSQL的建表脚本。
PostgreSQL 与 Mysql 相比,有很多令人向往的东西,网上评论很多,不再赘述。
如想从 MySql 转到 PostgreSQL ,可以试试本项目。
MySQL脚本示例:
CREATE TABLE `t_sys_role` (
`id` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 'id',
`name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '角色名称',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '角色表' ROW_FORMAT = Compact;
注意:必须有字段注释和表注释!
配置文件格式如下:
<?xml version="1.0" encoding="UTF-8" ?>
<Config>
<!-- MySQL数据表脚本文件所在目录 -->
<Script_MySQL ConType="dir">E:\mytable</Script_MySQL>
<!-- 生成的PgSQL数据表脚本文件所在目录 -->
<Script_PostgreSQL ConType="dir">E:\pgtable</Script_PostgreSQL>
</Config>
以上默认已经在E盘中创建好了,mytable和pgtable的文件夹。 其中mytable里存放需要转换的mysql脚本。
注意:目录必须存在!
打开App.java主类,执行main函数即可。
1.执行mvn install
2.使用方法1:行执行下列命令,生成所有代码:
java -jar .\MyScriptToPgScript.jar config.xml
其中:MyScriptToPgScript.jar 为生成的 jar 包, config.xml 为配置文件路径。
-- ----------------------------
-- Table structure for t_sys_role
-- -- 角色表
-- ----------------------------
-- DROP TABLE IF EXISTS "t_sys_role";
CREATE TABLE "t_sys_role"(
"id" character varying(255) COLLATE "default" NOT NULL,
"name" character varying(255) COLLATE "default" DEFAULT NULL::character varying,
CONSTRAINT t_sys_role_pkey PRIMARY KEY ("id")
)
WITH (
OIDS = FALSE
)
;
COMMENT ON TABLE "t_sys_role" IS '角色表';
COMMENT ON COLUMN "t_sys_role"."id" IS 'id';
COMMENT ON COLUMN "t_sys_role"."name" IS '角色名称';
推荐使用第一种方法,也方便错误调试。
第二种方法适合给不会使用java的人,打成现有文件,自己去执行即可。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。