• MySQL UPDATE:修改数据(更新数据)

    在 MySQL 中,可以使用 UPDATE 语句来修改、更新一个或多个表的数据。

    UPDATE 语句的基本语法

    使用 UPDATE 语句修改单个表,语法格式为:

    UPDATE <表名> SET 字段 1=值 1 [,字段 2=值 2… ] [WHERE 子句 ]
    [ORDER BY 子句] [LIMIT 子句]

    语法说明如下:

    • <表名>:用于指定要更新的表名称。
    • SET 子句:用于指定表中要修改的列名及其列值。其中,每个指定的列值可以是表达式,也可以是该列对应的默认值。如果指定的是默认值,可用关键字 DEFAULT 表示列值。
    • WHERE 子句:可选项。用于限定表中要修改的行。若不指定,则修改表中所有的行。
    • ORDER BY 子句:可选项。用于限定表中的行被修改的次序。
    • LIMIT 子句:可选项。用于限定被修改的行数。

    注意:修改一行数据的多个列值时,SET 子句的每个值用逗号分开即可。

    修改表中的数据

    【实例 1】在 tb_courses_new 表中,更新所有行的 course_grade 字段值为 4,输入的 SQL 语句和执行结果如下所示。

    mysql> UPDATE tb_courses_new
        -> SET course_grade=4;
    Query OK, 3 rows affected (0.11 sec)
    Rows matched: 4  Changed: 3  Warnings: 0
    mysql> SELECT * FROM tb_courses_new;
    +-----------+-------------+--------------+------------------+
    | course_id | course_name | course_grade | course_info      |
    +-----------+-------------+--------------+------------------+
    |         1 | Network     |            4 | Computer Network |
    |         2 | Database    |            4 | MySQL            |
    |         3 | Java        |            4 | Java EE          |
    |         4 | System      |            4 | Operating System |
    +-----------+-------------+--------------+------------------+
    4 rows in set (0.00 sec)

    根据条件修改表中的数据

    【实例 2】在 tb_courses 表中,更新 course_id 值为 2 的记录,将 course_grade 字段值改为 3.5,将 course_name 字段值改为“DB”,输入的 SQL 语句和执行结果如下所示。

    mysql> UPDATE tb_courses_new
        -> SET course_name='DB',course_grade=3.5
        -> WHERE course_id=2;
    Query OK, 1 row affected (0.13 sec)
    Rows matched: 1  Changed: 1  Warnings: 0
    mysql> SELECT * FROM tb_courses_new;
    +-----------+-------------+--------------+------------------+
    | course_id | course_name | course_grade | course_info      |
    +-----------+-------------+--------------+------------------+
    |         1 | Network     |            4 | Computer Network |
    |         2 | DB          |          3.5 | MySQL            |
    |         3 | Java        |            4 | Java EE          |
    |         4 | System      |            4 | Operating System |
    +-----------+-------------+--------------+------------------+
    4 rows in set (0.00 sec)

    注意:保证 UPDATE 以 WHERE 子句结束,通过 WHERE 子句指定被更新的记录所需要满足的条件,如果忽略 WHERE 子句,MySQL 将更新表中所有的行。

更多...

加载中...