zoukankan      html  css  js  c++  java
  • MySQL基础之更新和删除数据

    更新数据

    为了更新(修改)表中的数据, 可使用UPDATE语句。可采用两种方式使用UPDATE:

    • 更新表中特定的行
    • 更新表中的所有行

    基本的UPDATE语句由3部分组成, 分别是:

    • 要更新的表
    • 列名和他们的新值
    • 确定要更新行的过滤条件
    MariaDB [crashcourse]> UPDATE customers SET cust_email = 'elemer@fudd.com' WHERE cust_id = 10005;
    Query OK, 1 row affected (0.013 sec)
    Rows matched: 1  Changed: 1  Warnings: 0
    
    MariaDB [crashcourse]> 

    UPDATE语句中可以使用子查询。使得能用SELECT语句检索出的数据更新列数据

    如果用UPDATE语句更新多行, 并且在更新这些行中的一行或多行出现错误的时候, 则整个UPDATE操作被取消。

    为即使是发送错误, 也继续进行更新, 可使用IGIORE关键字, 如下所示:

    UPDATE IGNORE customers ...

    为了删除某个列, 可以设置它为NULL.

    MariaDB [crashcourse]> UPDATE customers SET cust_email = NULL WHERE cust_id = 10005;
    Query OK, 1 row affected (0.002 sec)
    Rows matched: 1  Changed: 1  Warnings: 0
    
    MariaDB [crashcourse]> 

    删除数据

    从表中删除数据, 使用DELETE语句。可以两种方式使用DELETE:

    • 从表中删除特定的行
    • 从表中删除所有的行
    MariaDB [crashcourse]> DELETE FROM customers WHERE cust_id = 10006;
    Query OK, 0 rows affected (0.000 sec)
    
    MariaDB [crashcourse]> 

    DELETE不需要使用列名或通配符。DELETE删除整行而不是删除列。为了删除指定的列, 请使用UPDATE语句

    DELETE语句从表中删除行, 甚至是删除表中所有的行。但是, DELETE不删除表本身

    更新和删除的指导原则

    使用UPDATE和DELETE语句全都具有WHERE子句,如果省略了WHERE子句,则UPDATE或DELETE将被应用到表中所有的行。

    下面是许多SQL程序员使用UPDATE或DELETE时所遵循的习惯:

    • 除非确实打算更新和删除每一行,否则绝对不要使用不带WHERE子句的UPDATE或DELETE语句
    • 保证每个表都有主键,尽可能像WHERE子句那样使用它(可以指定各主键、多个值或值的范围)
    • 在对UPDATE或DELETE语句使用WHERE子句前,应该先用SELECT进行测试,保证它过滤的是正确的记录,以防编写的WHERE子句不正确
    • 使用强制实施引用完整性的数据库,这样MySQL将不允许删除具有与其他表相关联的数据的行
  • 相关阅读:
    Dynamics AX 2012 R2 配置E-Mail模板
    Dynamics AX 2012 R2 设置E-Mail
    Dynamics AX 2012 R2 为运行失败的批处理任务设置预警
    Dynamics AX 2012 R2 耗尽用户
    Dynamics AX 2012 R2 创建一个专用的批处理服务器
    Dynamics AX 2012 R2 创建一个带有负载均衡的服务器集群
    Dynamics AX 2012 R2 安装额外的AOS
    Dynamics AX 2012 R2 将系统用户账号连接到工作人员记录
    Dynamics AX 2012 R2 从代码中调用SSRS Report
    Dynamics AX 2012 R2 IIS WebSite Unauthorized 401
  • 原文地址:https://www.cnblogs.com/featherwit/p/13406606.html
Copyright © 2011-2022 走看看