1. 程式人生 > >Mysql DBA 高級運維學習筆記-DML之修改表中的數據實戰

Mysql DBA 高級運維學習筆記-DML之修改表中的數據實戰

chan mat 可能 local ceshi 指定 防止 warn 發的

9.10 修改表中的數據

9.10.1 修改表中指定條件固定列的數據

1.命令語法:update 表名 set 字段=新值,….where 條件(一定要註意條件)

2.修改指定的行字段的內容

a.查看要修改的表

system@ceshi 02:3907->select * from test;
+----+-----------+
| id | name  |
+----+-----------+
|  1 | wwnwan|
|  2 | zbf   |
|  3 | lisi  |
|  4 | woshishei |
|  5 | nimei |
+----+-----------+

b.修改id為3的行的名字為tiejun

system@ceshi 02:5335->update test set name=‘tiejun‘ where id=3;
Query OK, 1 row affected (0.10 sec)
Rows matched: 1  Changed: 1  Warnings: 0

system@ceshi 02:5348->select * from test;
+----+-----------+
| id | name  |
+----+-----------+
|  1 | wwnwan|
|  2 | zbf   |
|  3 | tiejun|
|  4 | woshishei |
|  5 | nimei |
+----+-----------+

9.10.2 修改表中所有行的數據

嚴重案列(可能誤操作導致數據對視)

a.不帶條件更改所有表的數據

system@ceshi 02:5352->update test set name=‘tiejun‘;

不加條件要十分小心,專業做法,一定要問開發確認,如果你發給開發的語句要括號註明,防止DBA誤會。

b.更改了所有數據

system@ceshi 03:0109->select * from test;
+----+--------+
| id | name   |
+----+--------+
|  1 | tiejun |
|  2 | tiejun |
|  3 | tiejun |
|  4 | tiejun |
|  5 | tiejun |
+----+--------+

c.用備份的數據恢復

之前已經備份過了,這裏就不重新備份了

[root@localhost ~]# mysql -usystem -pzbf666 wwn < /opt/zbf_bak.sql

這裏的wwn是數據庫不是表。

system@ceshi 03:1044->select * from test;
+----+-----------+
| id | name  |
+----+-----------+
|  1 | wwnwan|
|  2 | zbf   |
|  3 | lisi  |
|  4 | woshishei |
|  5 | nimei |
+----+-----------+

Mysql DBA 高級運維學習筆記-DML之修改表中的數據實戰