在安全模式下執行 MySQL 刪除操作?
要以安全模式刪除,可使用以下查詢 −
SET SQL_SAFE_UPDATES = 0;
為了理解以上查詢,讓我們建立一個表。以下是建立表的查詢 −
mysql> create table SafeDeleteDemo −> ( −> Price int −> ); Query OK, 0 rows affected (0.50 sec)
利用插入命令在表中插入一些記錄。查詢如下 −
mysql> insert into SafeDeleteDemo values(100); Query OK, 1 row affected (0.11 sec) mysql> insert into SafeDeleteDemo values(200); Query OK, 1 row affected (0.19 sec) mysql> insert into SafeDeleteDemo values(300); Query OK, 1 row affected (0.09 sec) mysql> insert into SafeDeleteDemo values(500); Query OK, 1 row affected (0.14 sec) mysql> insert into SafeDeleteDemo values(1000); Query OK, 1 row affected (0.10 sec) mysql> insert into SafeDeleteDemo values(150); Query OK, 1 row affected (0.11 sec)
在刪除記錄之前,顯示錶中的所有記錄。查詢如下 −
mysql> select *from SafeDeleteDemo;
以下是輸出 −
+-------+ | Price | +-------+ | 100 | | 200 | | 300 | | 500 | | 1000 | | 150 | +-------+ 6 rows in set (0.00 sec)
現在藉助 SET 命令,在安全模式下執行刪除操作。查詢如下 −
mysql> SET SQL_SAFE_UPDATES = 0; Query OK, 0 rows affected (0.00 sec)
現在開始刪除表中的一些記錄。我們仍處於安全模式下 −
mysql> delete from SafeDeleteDemo where Price >=500; Query OK, 2 rows affected (0.14 sec)
現在,可檢查在刪除記錄之後表中存在多少條記錄。查詢如下 −
mysql> select *from SafeDeleteDemo;
以下是顯示我們已成功刪除 >= 500 條記錄的輸出 −
+-------+ | Price | +-------+ | 100 | | 200 | | 300 | | 150 | +-------+ 4 rows in set (0.00 sec)
現在藉助相同的 SET 命令,可以移除安全模式下的刪除操作。查詢如下 −
mysql> SET SQL_SAFE_UPDATES = 1; Query OK, 0 rows affected (0.00 sec)
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP