修改表中的指定固定列的数据

命令语法:update table_name set 字段=new_values .... where (注意:添加条件)

例如:更新前

root@leadchina 07:07:03->select * from student;
+----+----------+-----+--------+
| id | name     | age | dept   |
+----+----------+-----+--------+
|  1 | student1 |   0 | NULL   |
|  2 | student2 |  10 | NULL   |
|  5 | 008      |   9 | NULL   |
|  7 | name     |  10 | yuwen  |
|  8 | hui      |  10 | meishu |
|  9 | tes      |  20 | shuxue |
+----+----------+-----+--------+

修改表中id为1的,执行以下语句;

update student set name='huhui',age=29 where id=1;
root@leadchina 07:07:03->select * from student;
+----+----------+-----+--------+
| id | name     | age | dept   |
+----+----------+-----+--------+
|  1 | student1 |   0 | NULL   |
|  2 | student2 |  10 | NULL   |
|  5 | 008      |   9 | NULL   |
|  7 | name     |  10 | yuwen  |
|  8 | hui      |  10 | meishu |
|  9 | tes      |  20 | shuxue |
+----+----------+-----+--------+

注意:

当我们不添加条件时去做更新操作会对所有表格的字段全部指定new_values.

如下:此时dept会全部被变更,所以注意。

root@leadchina 07:20:11->update student set dept='shuxue';
Query OK, 6 rows affected (0.01 sec)
Rows matched: 6  Changed: 6  Warnings: 0

root@leadchina 07:24:12->select * from student;
+----+----------+-----+--------+
| id | name     | age | dept   |
+----+----------+-----+--------+
|  1 | huhui    |  29 | shuxue |
|  2 | student2 |  10 | shuxue |
|  3 | 008      |   9 | shuxue |
|  7 | name     |  10 | shuxue |
|  8 | hui      |  10 | shuxue |
|  9 | tes      |  20 | shuxue |
+----+----------+-----+--------+
6 rows in set (0.00 sec)

如果执行了此操作,可通过恢复备份进行回档,即恢复备份:

mysql  -uroot -p test </opt/test_bak.sql

 

 

 

  

posted @ 2022-02-23 19:34  闲着没事学学习  阅读(94)  评论(0)    收藏  举报