MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

セーフモードで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)

  1. 単一のクエリでIN()を使用してMySQLテーブルからレコードを削除する

    テーブルを作成しましょう- mysql> create table DemoTable1922    (    StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,    StudentName varchar(20)    ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1922(StudentNa

  2. サブクエリからMySQLSELECTを実行してから、DELETEを実行しますか?

    まずテーブルを作成しましょう- mysql> create table DemoTable1947    (    Id int,    Name varchar(20)    ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1947 values(101,'Chris'); Query OK, 1 row affected (0.