要在安全模式下删除,您可以使用以下查询-
SET SQL_SAFE_UPDATES = 0;
为了理解上面的查询,让我们创建一个表。以下是创建表的查询-
mysql> create table SafeDeleteDemo −> ( −> Price int −> );
借助insert命令将一些记录插入表中。查询如下-
mysql> insert into SafeDeleteDemo values(100); mysql> insert into SafeDeleteDemo values(200); mysql> insert into SafeDeleteDemo values(300); mysql> insert into SafeDeleteDemo values(500); mysql> insert into SafeDeleteDemo values(1000); mysql> insert into SafeDeleteDemo values(150);
在删除记录之前,显示表中的所有记录。查询如下-
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;
首先删除表中的一些记录。我们处于安全模式-
mysql> delete from SafeDeleteDemo where Price >=500;
现在,您可以在删除记录后检查表中存在多少记录。查询如下-
mysql> select *from SafeDeleteDemo;
以下是显示我们已成功删除> = 500的记录的输出-
+-------+ | Price | +-------+ | 100 | | 200 | | 300 | | 150 | +-------+ 4 rows in set (0.00 sec)
现在,您可以借助同一SET命令在安全模式下删除delete。查询如下-
mysql> SET SQL_SAFE_UPDATES = 1;