SpringBootCodeGenerator
SpringBootCodeGenerator copied to clipboard
如果发现有SQL语句不能识别,请留言给我分析
copy sql语句
CREATE TABLE t_auth_user (
user_id varchar(50) COLLATE utf8_bin NOT NULL COMMENT '用户id,UUID',
login_id varchar(100) COLLATE utf8_bin NOT NULL COMMENT '登录名',
user_name varchar(50) COLLATE utf8_bin NOT NULL COMMENT '用户名',
email varchar(128) COLLATE utf8_bin NOT NULL COMMENT '邮箱',
mobilenum varchar(20) COLLATE utf8_bin DEFAULT NULL COMMENT '手机',
pwd varchar(100) COLLATE utf8_bin NOT NULL COMMENT '密码',
is_first int(11) NOT NULL DEFAULT '1' COMMENT '是否第一次登录:0,否;1,是',
is_admin varchar(1) COLLATE utf8_bin DEFAULT '0' COMMENT '是否具有管理员权限:0,无;1,有',
delete_mark varchar(1) COLLATE utf8_bin DEFAULT '0' COMMENT '删除标记:0,未删除;1,已删除',
create_time datetime NOT NULL COMMENT '创建时间',
create_user varchar(50) COLLATE utf8_bin NOT NULL COMMENT '创建人',
update_time datetime DEFAULT NULL COMMENT '更新时间',
update_user varchar(50) COLLATE utf8_bin DEFAULT NULL COMMENT '更新人',
PRIMARY KEY (user_id),
UNIQUE KEY idx_user_login_id (login_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='用户表';
CREATE TABLE
t_auth_user(user_idvarchar(50) COLLATE utf8_bin NOT NULL COMMENT '用户id,UUID',login_idvarchar(100) COLLATE utf8_bin NOT NULL COMMENT '登录名',user_namevarchar(50) COLLATE utf8_bin NOT NULL COMMENT '用户名',mobilenumvarchar(20) COLLATE utf8_bin DEFAULT NULL COMMENT '手机',pwdvarchar(100) COLLATE utf8_bin NOT NULL COMMENT '密码',is_firstint(11) NOT NULL DEFAULT '1' COMMENT '是否第一次登录:0,否;1,是',is_adminvarchar(1) COLLATE utf8_bin DEFAULT '0' COMMENT '是否具有管理员权限:0,无;1,有',delete_markvarchar(1) COLLATE utf8_bin DEFAULT '0' COMMENT '删除标记:0,未删除;1,已删除',create_timedatetime NOT NULL COMMENT '创建时间',create_uservarchar(50) COLLATE utf8_bin NOT NULL COMMENT '创建人',update_timedatetime DEFAULT NULL COMMENT '更新时间',update_uservarchar(50) COLLATE utf8_bin DEFAULT NULL COMMENT '更新人', PRIMARY KEY (user_id), UNIQUE KEYidx_user_login_id(login_id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='用户表';
好的,感谢反馈,已经优化了comment的提取逻辑,今晚提交的版本已经支持处理些sql。
CREATE TABLE USER (
ID varchar(32) PRIMARY KEY COMMENT '主键',
password varchar(32) NOT NULL COMMENT '密码',
username varchar(32) NOT NULL COMMENT '用户'
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
点击entity无法生成相关代码
CREATE TABLE tb_amount (
ID int(10) NOT NULL AUTO_INCREMENT,
PRODUCT_CODE varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '产品代码',
GENDER varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '性别(male,female)',
MIN_INSURED_AGE int(3) NULL DEFAULT NULL COMMENT '最小投保年龄',
MAX_INSURED_AGE int(3) NULL DEFAULT NULL COMMENT '最大投保年龄',
AMOUNT double(10, 2) NULL DEFAULT NULL COMMENT '基本保额',
PREMIUM_RATE double(10, 2) NULL DEFAULT NULL COMMENT '基本保费',
YEAR_NUM int(3) NULL DEFAULT NULL COMMENT '缴费年限',
PREMIUM_TYPE varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '费率类型',
INSURANCE_PERIOD varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '保险期间(30年,60年)',
INSURANCE_PERIOD_TYPE varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '保险期间类型(如定期年0,定期岁1,终身2,以后终身对应值:200)',
PAY_MODE varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '交费方式',
PRIMARY KEY (ID) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
CREATE TABLE
USER(IDvarchar(32) PRIMARY KEY COMMENT '主键',passwordvarchar(32) NOT NULL COMMENT '密码',usernamevarchar(32) NOT NULL COMMENT '用户' ) ENGINE=InnoDB DEFAULT CHARSET=utf8;点击entity无法生成相关代码
你好,应该是之前bejson的js更新有问题。现在这段代码可以正常生成。
`@Entity @Data @Table(name="user") public class User implements Serializable { private static final long serialVersionUID = 1L; @Id @GeneratedValue /** * 主键 */ private String id;
/**
* 密码
*/
private String password;
/**
* 用户
*/
private String username;
}`
CREATE TABLE prediction_detail (
id int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT 'id',
prediction_id int(11) NOT NULL COMMENT '主表id',
user_id int(11) NOT NULL COMMENT 'ç¨æ·id',
object_id varchar(24) NOT NULL DEFAULT '',
rule_category int(2) NOT NULL COMMENT 'åç±»',
rule_value int(2) NOT NULL COMMENT 'å¼',
amount decimal(16,4) NOT NULL COMMENT 'éé¢',
handing_fee decimal(16,4) NOT NULL COMMENT 'æç»è´¹',
create_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 'å建æ¶é´',
update_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (id),
UNIQUE KEY single_pay (prediction_id,user_id),
UNIQUE KEY single_pay1 (prediction_id,rule_category,rule_value),
KEY prediction_id (prediction_id)
) ENGINE=InnoDB AUTO_INCREMENT=35752 DEFAULT CHARSET=utf8mb4;
CREATE TABLE
prediction_detail(idint(11) unsigned NOT NULL AUTO_INCREMENT COMMENT 'id',prediction_idint(11) NOT NULL COMMENT '主表id',user_idint(11) NOT NULL COMMENT 'ç¨æ·id',object_idvarchar(24) NOT NULL DEFAULT '',rule_categoryint(2) NOT NULL COMMENT 'åç±»',rule_valueint(2) NOT NULL COMMENT 'å¼',amountdecimal(16,4) NOT NULL COMMENT 'éé¢',handing_feedecimal(16,4) NOT NULL COMMENT 'æç»è´¹',create_timedatetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 'å建æ¶é´',update_timedatetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (id), UNIQUE KEYsingle_pay(prediction_id,user_id), UNIQUE KEYsingle_pay1(prediction_id,rule_category,rule_value), KEYprediction_id(prediction_id) ) ENGINE=InnoDB AUTO_INCREMENT=35752 DEFAULT CHARSET=utf8mb4;
ä½ å¥½ï¼20181122çå·²ç»å¯ä»¥è¿è¡åè§£æè¯¥è¯å¥ï¼ä½ å¯ä»¥èªå·±ä¸è½½ä¸ä¸ªè¿è¡ä¸ä¸ï¼bejsonçæ´æ°æ¯è¾æ ¢ã
在insert语句中,可不可以对每一列用if test 来判断是否为空,相当于还是要一列一列手工去加
sql 转通用lombok entity ,tinyint转换类型选择Integer无法生成integer
CREATE TABLE g_attribute_value (
id bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键id',
attribute_name_id bigint(20) NOT NULL COMMENT '属性名外键id',
value varchar(255) NOT NULL COMMENT '属性值',
is_deleted tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '是否删除0-未删除,1-已删除',
create_userid bigint(20) DEFAULT NULL COMMENT '创建人ID',
create_username varchar(100) DEFAULT '' COMMENT '创建人姓名',
create_userip varchar(60) DEFAULT '' COMMENT '创建人IP',
create_time datetime DEFAULT NULL COMMENT '创建时间',
update_userid bigint(20) DEFAULT NULL COMMENT '修改人ID',
update_username varchar(100) DEFAULT '' COMMENT '修改人姓名',
update_userip varchar(60) DEFAULT '' COMMENT '修改人IP',
update_time datetime DEFAULT NULL COMMENT '修改时间',
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='属性值表';
代ç çæå¤±è´¥ :String index out of range: -1
CREATE TABLE consumer_industry_admin_rltn (
id bigint(20) NOT NULL AUTO_INCREMENT,
industry_id bigint(20) DEFAULT NULL COMMENT 'è¡ä¸id',
admin_id bigint(20) DEFAULT NULL COMMENT '管çåid',
create_time timestamp NULL DEFAULT NULL,
create_id bigint(20) DEFAULT NULL,
update_time timestamp NULL DEFAULT NULL,
update_id bigint(20) DEFAULT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE `report_received_shipment` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'pk',
`sku_id` varchar(20) NOT NULL DEFAULT '' COMMENT 'skuId',
`unique_code` varchar(20) NOT NULL DEFAULT '' COMMENT 'å¯ä¸ç /ååç¼ç ',
`article_number` varchar(100) NOT NULL DEFAULT '' COMMENT 'è´§å·',
`entry_order_code` varchar(64) NOT NULL DEFAULT '' COMMENT 'æ¶è´§åå·',
`report_modified_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
) ENGINE=InnoDB AUTO_INCREMENT=4047 DEFAULT CHARSET=utf8mb4 COMMENT='æ¶åè´§æ¥è¡¨'
ä¸ç¥éæ¯ä¸æ¯uniqueå±äºç¹æ®å ³é®åï¼unique_xxxä¸è½è¢«æ£ç¡®è¯å«ã
create table t ( _amount numeric(18,2) );
生成的是String,需要BigDecimal
CREATE TABLE IF NOT EXISTS "public"."t_device" ( "cid" SERIAL primary key , "mapping_id" varchar(64) COLLATE "pg_catalog"."default", "name" varchar(64) COLLATE "pg_catalog"."default", "source" int4 ) 这个是Postgres数据库中的序列主键 SERIAL 在生成的时候没办法识别 这个SERIAL 的衍生语法有 SERIAL4 SERIAL8