背景
业务方要做一个管理平台,在该平台上可以维护系统信息,提供新增、更新、删除等操作。就是我们常说的CRUD
开发,因为对于每个系统来说,系统编号具有唯一性,所以在新增系统时要先校验系统编号是否存在。
开篇提问
1、思考:判断一条记录是否存在有几种方式,哪种方式更合理效率更高?
2、如何判断表中是否有数据?
判断方式
方式一:使用唯一索引
使用唯一索引,插入数据前不判断,通过捕获异常来处理
优点:减少一次数据库操作
缺点:需要处理异常逻辑
相关SQL
-- 建表语句(sys_code设置成唯一索引)
CREATE TABLE `system_info` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
`sys_code` varchar(100) COLLATE utf8mb4_bin NOT NULL DEFAULT '' COMMENT '系统code'
PRIMARY KEY (`id`),
-- 增加唯一索引
UNIQUE