• 数据库DML


    DML:数据操作语言,它是对表中的数据进行操作的语言.它包含:增,删,改

    创建一张表用于测试DML:

    1. CREATE TABLE person(
    2.     name VARCHAR(30),
    3.     age INT(3)
    4. );

    插入数据

    语法:

    INSERT INTO 表名 [(字段1,字段2,...)] VALUES (字段1的值,字段2的值,...)

    1. INSERT INTO person(name,age) VALUES ('张三',22);
    2. INSERT INTO person(age,name) VALUES (33,'李四');
    • 在数据库中,字符串是使用单引号的.
    • 指定的值要与前面指定的类的顺序,类型,个数完全一致
    • 查看person表中所有数据:
      SELECT * FROM person;

    在INSERT语句中未被指定的列在插入数据时,默认插入NULL值。如果未指定的列指定了默认值,则插入指定的默认值

    INSERT INTO person(name) VALUES ('王五');
    • age字段会插入默认值NULL
    • 在数据库中,无论表中某个字段的类型是什么,只要没有单独指定过默认值时,默认值都是NULL

    在INSERT语句中字段名可以忽略,若忽略则为全列插入,此时VALUES后指定的值的顺序,类型,个数必须与表中字段一致

    1. INSERT INTO person VALUES('赵六',56);
    2. INSERT INTO person VALUES('钱七',NULL);
    • 所有字段都必须给值,如果想插入NULL值,则直接指定NULL即可
    • 以下都是错误的操作
      INSERT INTO person VALUES('赵六');                列的值个数不匹配
      INSERT INTO person VALUES(22,'赵六');                列的值类型不匹配

    修改表中数据

    语法:

    UPDATE 表名 SET 字段名1=字段值1[,字段名2=字段值2,....] [WHERE 过滤条件]

    • 通常情况下修改表中记录时都要指定WHERE条件,如果不添加WHERE条件则是对表中每一条记录都进行修改!
      UPDATE person SET age=15

      执行后,person表中每条记录的age字段的值都会变为15!

    修改指定记录

    将张三的年龄改为22岁:
     

    UPDATE person SET age=22 WHERE name='张三';   

    WHERE子句在这里的作用:仅选定表中name字段值为'张三'的记录

    将年龄等于15岁的人改为年龄36岁
     

    UPDATE person SET age=36 WHERE age=15;        

    满足WHERE条件的记录都会进行修改

    WHERE子句中常用的条件

    =,<,>,<=,>=,<>(不等于,!=不是所有数据库都支持)

    将年龄大于30岁的人改为年龄29

    将一个计算表达式的结果作为修改的值使用

    将person表中每个人的年龄涨一岁

    UPDATE person SET age=age+1;

    同时修改多个字段

    将"李四"的名字改为"李老四"并且年龄改为55

    UPDATE person SET name='李老四',age=55 WHERE name='李四'
    • SQL语句中的每个子句之间可以有任意个空格或换行。且SQL语句关键字是不区分大小写的。
    • 字符串的内容是严格区分空格,大小写的。

    删除表中数据

    语法

    DELETE [FROM] 表名 [WHERE 过滤条件]

    • WHERE子句不写,则是清空表操作!

    案例

    删除'李老四'这条记录

    DELETE FROM person WHERE name='李老四';

    删除表中年龄在30岁以上的(含30)

    DELETE FROM person WHERE age>=30;

    清空表操作

    DELETE FROM person;

    总结

    • DML:数据操作语言,对表中数据进行操作的语言。
    • INSERT语句用于向表中插入数据
      1. INSERT时指定的字段顺序可以不与表中一致,但是VALUES中的值必须与指定的字段一致
      2. 不指定的字段插入默认值,字段没有指定默认值时,默认值为NULL
      3. 当完全不指定字段时,则为全列插入,此时VALUES中指定的值顺序,类型,个数必须与表完全一致
    • UPDATE语句用于修改表中数据
    • DELETE语句用于删除表中数据
    • UPDATE语句和DELETE语句实际应用中要添加WHERE子句,否则都是对表中全部记录进行操作
  • 相关阅读:
    深入解析分布式限流
    unity教程
    OpenCV添加文字和水印------c++
    查找算法【哈希表】 - 处理冲突的方法:开放地址法-线性探测法
    基于C#实现的在线聊天室的桌面系统软件
    Avalonia中的线性渐变画刷LinearGradientBrush
    【每日一题】找到字符串中所有字母异位词
    jvm面试题
    Bean 管理(工厂bean)
    HTTP四种请求方式,状态码,请求和响应报文
  • 原文地址:https://blog.csdn.net/m0_51041464/article/details/127662883