MySQL数据库教程03

DML 常见操作

DML 主要是针对数据库的增删改进行的操作。测试主要是为了测试前期准备,包括准备测试数据预埋、测试设计构建。

新增数据

  1. 新增单行数据
    INSERT INTO <表名> ([列名]) VALUES (<值列表>)

    • 单行新增指定新增的列

      sql 复制代码
      INSERT INTO student(s_name,s_birth,s_sex) values('小明','2000-12-12','男');
    • 单列新增所有字段数据

      sql 复制代码
      INSERT INTO student VALUES('003','小刘','1990-11-02','女');
      INSERT INTO student VALUES('004','小芳','1990-12-03','男');
      INSERT INTO student VALUES('005','小钱','1990-12-04','女');
  2. 新增多行数据
    INSERT INTO <表名> ([列名]) VALUES (<值列表>),(<值列表>),(<值列表>).....

    sql 复制代码
    INSERT INTO student values('006','小小','1990-12-04','女'),('007','大大','1990-12-04','男'),('008','大小','1990-12-04','女');

注意事项:

  1. 插入的数据必须跟给定的字段一一对应。
  2. 插入的数据类型必须跟字段的约束类型保持一致。
  3. 如果表中设置了主键自增,不建议指定给该字段手动插入值。
  4. 如果表中设置了非空约束,在新增数据时必须指定插入该字段数据值。
  5. 具有缺省值的列,可以使用DEFAULT(缺省)关键字来代替插入的数值,如自增、默认等约束。

修改数据

  1. 语法UPDATE <表名> SET <列名 = 更新值> [WHERE <更新条件>]

    • 不带条件修改

      ini 复制代码
      UPDATE  student  SET s_sex='女';
    • 带条件的修改使用 where 语句

      ini 复制代码
      UPDATE   student   SET s_sex='男' WHERE s_name='赵雷';

删除数据

  1. deletedelete from 表名 [where 列名=条件]
  2. truncatetruncate table 表名

区别:

两种删除都可以直接清空表格数据,只清空数据,不会删除表格的约束。delete删除数据不会重置自增约束的排序,truncate删除会重置自增的约束排序。truncate不能作用于有外键约束的表。

相关推荐
GBASE7 小时前
G术时刻 |GBase 8s数据库事务并发控制之封锁技术介绍(下)
数据库
刘棕霆8 小时前
24—AI Skill 测评工作流工具箱化:为什么 regression 会自然出现
aigc·ai编程·测试
慕嵩云15 小时前
为什么我认为测试开发是原始的 Harness
测试
xiezhr17 小时前
逛GitHub发现了一款免费的带AI功能的数据库管理工具
数据库·ai编程·dba
吃糖的小孩2 天前
给 QQ AI 机器人设计“可控记忆”:会话摘要、手动长期记忆与角色卡边界
数据库
刘棕霆2 天前
22—AI Skill 测评中断后怎么续跑:active-pipeline.json 断点恢复设计
aigc·ai编程·测试
笃行3502 天前
金仓数据库数据安全双防线:静态存储加密与传输加密实战
数据库
笃行3502 天前
金仓数据库物理备份实战:sys_rman 全流程演练与误覆盖抢救
数据库
笃行3502 天前
金仓数据库逻辑备份实战:从全库导出到 Schema 替换的完整闭环
数据库