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不能作用于有外键约束的表。

相关推荐
不可求~9 小时前
多模型路由怎么落地:把任务分流写进项目的最小实现
java·前端·数据库
Lumistory9 小时前
城市建筑照明的落地与长效运营观察
大数据·数据库·中间件·光照贴图
围炉聊科技12 小时前
长期免费的数据库方案——零成本基建系列
数据库
AC赳赳老秦12 小时前
公开图片 OCR 数据提取:OpenClaw 合规采集公开信息图,识别文字与表格并转化为结构化数据
java·大数据·前端·数据库·python·php·openclaw
梁辰兴14 小时前
软件工程:数据结构设计
数据库·软件工程·设计原则·设计方法·梁辰兴·数据库结构设计·数据库结构类型
AC赳赳老秦14 小时前
风控岗应用:OpenClaw 采集公开司法与经营异常数据,自动生成企业风险评估报告
大数据·c语言·数据库·人工智能·python·php·openclaw
灯澜忆梦15 小时前
【MySQL18】进阶篇 | MySQL管理
数据库·mysql
zcmodeltech15 小时前
智能制造教学实训沙盘模型多系统协同控制系统设计:基于STM32与Modbus RTU的工业机器人-智慧工厂-数字孪生全场景联动方案
数据库·stm32·嵌入式硬件·机器人·制造·多分类
AI多Agent协作实战派15 小时前
AI多Agent协作系统实战(四十):AI说“没有错误“,系统判了“测试失败“——一个正则的误判
数据库·人工智能
隔窗听雨眠16 小时前
OceanBase接入DeepSeek:数据库与AI的深度融合如何改写企业数据规则
数据库·人工智能·oceanbase