GO在线工具集
首页
搜索
反馈
【店小二】公告:

sql转proto
18017  |   |   |  516

功能介绍

1.支持多种数据库的建表 sql转proto, 其中包含(pg、oracle、mysql)等数据库; 建表语句, 建表语句, 建表语句(重要的说3遍)
2.在转换 sql 的时候, 需要确认下是否需要切换处理类型, 暂时支持3种处理方式(normal, postgresql, oracle), 默认: normal.
3.支持自定义过滤不需要的字段, 多个字段通过 , 隔开 说明: 不能在 sql 中包含注释内容(即: -- xxx# xxx); 由于此工具是通过 ; 来分割语句处理. 所以 normal 状态下可以同时处理多个建表语句; postgresqloracle 由于需要解析注释, 只支持单个建表语句.


示例

mysql 建表语句
CREATE TABLE if not exists user (
    id int NOT NULL AUTO_INCREMENT,
    name varchar(10) NOT NULL COMMENT '姓名',
    gender tinyint NOT NULL DEFAULT 0 COMMENT '性别 0-未知 1-男 2-女',
    age int NOT NULL COMMENT '年龄',
    created_date datetime DEFAULT CURRENT_TIMESTAMP,
    updated_date datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    PRIMARY KEY (id)
);

处理后

message UserInfo {
    int32 id = 1;
    string name = 2; // 姓名
    int32 gender = 3; // 性别 0-未知 1-男 2-女
    int32 age = 4; // 年龄
    string created_date = 5;
    string updated_date = 6;
}
pgsql 建表语句
CREATE TABLE if not exists user (
    id character varying(32) NOT NULL DEFAULT sys_guid(),
    name character varying(10) NOT NULL,
    gender tinyint NOT NULL,
    age tinyint NOT NULL,
    created_date timestamp without time zone DEFAULT now(),
    updated_date timestamp without time zone DEFAULT now(),
    CONSTRAINT user_pkey PRIMARY KEY (id)
);
COMMENT ON TABLE user IS '用户表';
COMMENT ON COLUMN user.id IS '主键';
COMMENT ON COLUMN user.name IS '姓名';
COMMENT ON COLUMN user.gender IS '性别 0-未知 1-男 2-女';
COMMENT ON COLUMN user.age IS '年龄';
COMMENT ON COLUMN user.created_date IS '创建时间';
COMMENT ON COLUMN user.updated_date IS '更新时间';

处理后

message UserInfo {
    int32 id = 1;
    string name = 2; // 姓名
    int32 gender = 3; // 性别 0-未知 1-男 2-女
    int32 age = 4; // 年龄
    string created_date = 5;
    string updated_date = 6;
}
oracle 建表语句
CREATE TABLE if not exists user (
    id character varying(32) NOT NULL DEFAULT sys_guid(),
    name character varying(10) NOT NULL,
    gender tinyint NOT NULL,
    age tinyint NOT NULL,
    created_date date default sysdate,
    updated_date date default sysdate,
    CONSTRAINT user_pkey PRIMARY KEY (id)
);
COMMENT ON TABLE user IS '用户表';
COMMENT ON COLUMN user.id IS '主键';
COMMENT ON COLUMN user.name IS '姓名';
COMMENT ON COLUMN user.gender IS '性别 0-未知 1-男 2-女';
COMMENT ON COLUMN user.age IS '年龄';
COMMENT ON COLUMN user.created_date IS '创建时间';
COMMENT ON COLUMN user.updated_date IS '更新时间';

处理后

message UserInfo {
    int32 id = 1;
    string name = 2; // 姓名
    int32 gender = 3; // 性别 0-未知 1-男 2-女
    int32 age = 4; // 年龄
    string created_date = 5;
    string updated_date = 6;
}