数据库表示例.sql 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. #默认数据库编码为uft8mb4
  2. #XXXX为自定义内容
  3. #无限级分类表
  4. CREATE TABLE `XXXX_class` (
  5. `id` int(11) NOT NULL AUTO_INCREMENT,
  6. #单层结构的不需要这行 `parent_id` int(11) NOT NULL DEFAULT '0' COMMENT '上级科目id',
  7. `XXXX_code` varchar(191) NOT NULL DEFAULT '' COMMENT 'XXXX编码', #需要走索引的话最长不能超过191
  8. `XXXX_name` varchar(191) NOT NULL DEFAULT '' COMMENT 'XXXX名称', #需要走索引的话最长不能超过191
  9. `is_end_class` tinyint(4) NOT NULL DEFAULT '1' COMMENT '是否末级(1是0否)',
  10. `valid` tinyint(4) NOT NULL DEFAULT '1' COMMENT '是否可用(0禁用,1可用)',
  11. `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  12. `update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  13. PRIMARY KEY (`id`),
  14. #单层结构的不需要这行 KEY `parent_id` (`parent_id`),
  15. KEY `XXXX_code` (`XXXX_code`),
  16. KEY `XXXX_name` (`XXXX_name`)
  17. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='XXXX业务分类表';
  18. #一对多信息表 start
  19. CREATE TABLE `XXXX_info` (
  20. `id` int(11) NOT NULL AUTO_INCREMENT,
  21. `XXXX_class_id` int(11) NOT NULL DEFAULT '0' COMMENT 'XXXX业务分类表id',
  22. `XXXX_time` bigint(20) NOT NULL DEFAULT '0' COMMENT 'XXXX业务时间', #能够为空的时间字段最好不要用date_time与timestamp,因为某些版本的mysql可能not null的时候会报错
  23. `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  24. `update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  25. PRIMARY KEY (`id`),
  26. KEY `XXXX_class_id` (`XXXX_class_id`),
  27. KEY `XXXX_time` (`XXXX_time`)
  28. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='XXXX业务表';
  29. CREATE TABLE `XXXX_info_item` (
  30. `id` int(11) NOT NULL AUTO_INCREMENT,
  31. `XXXX_info_id` int(11) NOT NULL DEFAULT '0' COMMENT 'XXXX业务表主键id',
  32. `XXXX_item_name` varchar(64) NOT NULL DEFAULT '' COMMENT '业务详情名',
  33. `XXXX_amount` bigint(20) NOT NULL DEFAULT '0' COMMENT '金额(单位分',
  34. PRIMARY KEY (`id`),
  35. KEY `XXXX_info_id` (`XXXX_info_id`)
  36. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='XXXX业务表子表--XXXX详情表';
  37. CREATE TABLE `XXXX_info_item_ids` (
  38. `id` int(11) NOT NULL AUTO_INCREMENT,
  39. `XXXX_info_item_id` int(11) NOT NULL DEFAULT '0' COMMENT 'XXXX详情表id',
  40. `XXXX_id` int(11) NOT NULL DEFAULT '0' COMMENT '其它业务关联id',
  41. PRIMARY KEY (`id`),
  42. KEY `XXXX_info_item_id` (`XXXX_info_item_id`),
  43. KEY `XXXX_id` (`XXXX_id`)
  44. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='XXXX业务表子表--XXXX详情表子表--具体业务关联表';
  45. #一对多信息表 end