请注意,本文编写于 143 天前,最后修改于 143 天前,其中某些信息可能已经过时。
目录
sql语句基础
增删改查
增加
删除
修改
删除
复杂的查询使用
sql语句基础
增删改查
增加
- Create(新增数据)
作用:向表中插入新记录(如新增缺陷)
语法:INSERT INTO 表名 (字段1, 字段2, ...) VALUES (值1, 值2, ...);
示例:INSERT INTO bug (title, status, priority, type, module_id, reporter_id)
VALUES ('购物车结算金额计算错误', '未解决', '高', '功能', 2, 101);
注意事项:
字符串值需用单引号包裹(如'未解决')
自增主键(如bug_id)可省略不写,数据库会自动生成
字段顺序需与值的顺序一一对应
删除
- Read(查询数据)
作用:从表中获取记录(如查询缺陷列表)
基础语法:SELECT 字段1, 字段2, ... FROM 表名 [WHERE 条件] [ORDER BY 字段] [LIMIT 数量];
修改
- Update(修改数据)
作用:更新表中已有记录(如修改缺陷状态)
语法:UPDATE 表名 SET 字段1=值1, 字段2=值2, ... WHERE 条件;
注意事项:
绝对禁止不加 WHERE 条件!否则会更新表中所有记录(如UPDATE defect SET defect_status='fixed'会导致全表状态错误)
可同时更新多个字段(用逗号分隔)
删除
- Delete(删除数据)
作用:删除表中记录(如删除重复缺陷)
推荐:逻辑删除(保留数据)
-- 逻辑删除:将重复缺陷标记为"已删除"(而非物理删除)
UPDATE defect
SET is_deleted = 1 -- 逻辑删除标记:1表示已删除
WHERE defect_id = 8; -- 仅删除defect_id=8的缺陷
禁止:物理删除(数据不可恢复)
-- 错误示例:物理删除会永久丢失数据,仅在测试环境清理垃圾数据时使用
-- DELETE FROM defect WHERE defect_id=8; -- 禁止!除非确认数据无任何价值
注意事项:
逻辑删除后,查询时需加AND is_deleted=0过滤(如SELECT * FROM defect WHERE is_deleted=0)
物理删除前必须通过查询确认(如SELECT * FROM defect WHERE defect_id=8)
核心总结
增删改操作需谨慎,尤其是UPDATE和DELETE,必须加WHERE条件锁定目标记录
查询(SELECT)是测试场景中最常用的操作,重点练习WHERE(条件筛选)、ORDER BY(排序)、LIMIT(限制条数)的组合
所有字符串值必须用单引号包裹,字段名需与表结构一致(避免拼写错误)
复杂的查询使用
本文作者:haotian
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA
许可协议。转载请注明出处!