博客
关于我
MySQL学习笔记(九)—— MySQL的DML语言
阅读量:727 次
发布时间:2019-03-21

本文共 1843 字,大约阅读时间需要 6 分钟。

数据操作语言:插入、修改与删除

在数据库管理中,插入、修改和删除是最常用的操作。掌握这些语句能够帮助开发者高效维护数据库,确保数据的准确性和完整性。本文将详细介绍这些操作的语法以及实际应用场景。


一、插入语句

插入语句用于向数据库中添加新的记录。支持两种主要方式。

方式一:经典插入

语法:

INSERT INTO 表名(列名1, 列名2, ...) VALUES(值1, 值2, ...);

示例:

INSERT INTO beauty(id, NAME, sex, borndate, phone, photo, boyfriend_id) VALUES(13, '唐艺昕', '女', '1990-4-23', '1898888888', NULL, 2);

关键点:

  • 值与列一致:插入的值必须与目标列的数据类型兼容。
  • 默认值处理:允许插入 NULL 的列不需要指定值,但不能为必须不允许 NULL 的列插入 NULL
  • 列顺序灵活:插入时可以随意调整列的顺序,只要与表中定义一致。
  • 值数量一致:插入的值数量必须等于目标列的数量。

  • 方式二:使用 SET 关键字

    语法:

    INSERT INTO 表名 SET 列名 = 值, 列名 = 值, ...;

    示例:

    INSERT INTO beauty SETid = 19,NAME = '刘涛',phone = '999';

    优点:

    • 更适合批量更新或单列插入。
    • 不支持插入多行数据。

    多值插入示例

    方式一支持插入多行数据:

    INSERT INTO beauty VALUES(23, '唐艺昕1', '女', '1990-4-23', '1898888888', NULL, 2),(24, '唐艺昕2', '女', '1990-4-23', '1898888888', NULL, 2),(25, '唐艺昕3', '女', '1990-4-23', '1898888888', NULL, 2);

    二、修改语句

    修改语句用于更新已有记录的列值,可以针对单表或多表完成。

    单表修改示例

    语法:

    UPDATE 表名 SET 列名 = 新值, 列名 = 新值 ... WHERE 筛选条件;

    案例:

    -- 修改姓唐女神的电话号码UPDATE beauty SET phone = '13899888899' WHERE NAME LIKE '唐%';

    多表修改示例

    语法:

  • SQL92:支持列别名:
  • UPDATE 表1 别名, 表2 别名 SET 列=值 ... WHERE 连接条件 AND 筛选条件;
    1. SQL99:支持Join语法:
    2. UPDATE 表1 别名 inner|left|right join 表2 别名 ON 连接条件 SET 列=值 ... WHERE 筛选条件;

      案例:

      -- 修改张无忌女朋友的手机号UPDATE boys bo INNER JOIN beauty b ON boboyfriend_id = bboyfriend_id SET bphone = '119', bo.usercp = 1000 WHERE bo.boyname = '张无忌';

      删除语句

      删除操作分为两种方式:DELETETRUNCATE


      方式一:使用 DELETE

      语法:

    3. 单表删除:
    4. DELETE FROM 表名 WHERE 筛选条件;
      1. 多表删除:
      2. DELETE 表1_别名, 表2_别名 FROM 表1_别名, 表2_别名 WHERE 连接条件 AND 筛选条件;

        案例:

        -- 删除张无忌女朋友的信息DELETE b FROM beauty b INNER JOIN boys bo ON b.boyfriend_id = bo.id WHERE bo.boyname = '张无忌';

        方式二:使用 TRUNCATE

        语法:

        TRUNCATE TABLE 表名;

        特点:

      3. 不能添加 WHERE 条件。
      4. 适合清空表且不关心自增字段的值。
      5. 操作后无法回滚。
      6. 案例:

        TRUNCATE TABLE boys;

        数据删除注意事项

      7. DELETE:支持添加筛选条件,删除部分数据。
      8. TRUNCATE:删除全部数据,且不能回滚。
      9. 自增列:删除操作后,自增字段会重置为初始值或断点。

      10. 总结

        掌握插入、修改和删除语句的使用方式,是数据库管理的基础功课。通过合理运用这些操作,可以打造高效的数据管理流程,确保数据库的稳定性和安全性。

    转载地址:http://dhtgz.baihongyu.com/

    你可能感兴趣的文章
    multi swiper bug solution
    查看>>
    MySQL Binlog 日志监听与 Spring 集成实战
    查看>>
    MySQL binlog三种模式
    查看>>
    multi-angle cosine and sines
    查看>>
    Mysql Can't connect to MySQL server
    查看>>
    mysql case when 乱码_Mysql CASE WHEN 用法
    查看>>
    Multicast1
    查看>>
    mysql client library_MySQL数据库之zabbix3.x安装出现“configure: error: Not found mysqlclient library”的解决办法...
    查看>>
    MySQL Cluster 7.0.36 发布
    查看>>
    Multimodal Unsupervised Image-to-Image Translation多通道无监督图像翻译
    查看>>
    MySQL Cluster与MGR集群实战
    查看>>
    multipart/form-data与application/octet-stream的区别、application/x-www-form-urlencoded
    查看>>
    mysql cmake 报错,MySQL云服务器应用及cmake报错解决办法
    查看>>
    Multiple websites on single instance of IIS
    查看>>
    mysql CONCAT()函数拼接有NULL
    查看>>
    multiprocessing.Manager 嵌套共享对象不适用于队列
    查看>>
    multiprocessing.pool.map 和带有两个参数的函数
    查看>>
    MYSQL CONCAT函数
    查看>>
    multiprocessing.Pool:map_async 和 imap 有什么区别?
    查看>>
    MySQL Connector/Net 句柄泄露
    查看>>