设计数据库思路及遇到的问题

暂时还不太系统,持续学习中


//跟同事沟通学习

拆出共有属性单独设计一个表;

单个业务独立一个表;


出现问题及解决:

1、插入数据为字典、列表时,外面包一层引号

INSERT INTO plan_record

    (plan_name,env_type,case_list,plan_status,plan_author,created_at,updated_at)

    VALUES

    ("新板块市场计划",3,'["1","23"]',1,"一个小朋友",now(),now());


2、设计属性名时,避免使用mysql关键字

如 name 、 status


3、设计时考虑层级概念

如当前表内数据,记录间可能存在多个层级,则需要有parent_level_id

CREATE TABLE `suite_record` (

  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键ID',

  `suite_name` varchar(100) NOT NULL DEFAULT '' COMMENT '标题',

  `parent_level_id` int(11) NOT NULL DEFAULT '0' COMMENT '上一级,0无上一级',

  `env_type` tinyint(4) NOT NULL DEFAULT '1' COMMENT '环境类型,1-测试,2-预上线,3-线上',

  `level` tinyint(4) NOT NULL DEFAULT '0' COMMENT '层级,1-一级,2-二级,3-三级',

  `suite_status` tinyint(4) NOT NULL DEFAULT '1' COMMENT '删除状态,1-未删除,2-已删除',

  `created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',

  `updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',

  PRIMARY KEY (`id`),

  KEY `idx_env_type` (`env_type`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='套件记录表';

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容