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

ユーザーはどのようにして現在のMySQLトランザクションを明示的に終了できますか?


以下は、現在のMySQLトランザクションを明示的に終了できる方法です-

COMMITコマンドによる

COMMITコマンドを実行すると、現在のトランザクションは明示的に終了します。この場合、変更はコミットされます。

mysql> START TRANSACTION;
Query OK, 0 rows affected (0.00 sec)

mysql> INSERT INTO Marks Values(1, 'Aarav','Maths',50);
Query OK, 1 row affected (0.00 sec)

mysql> INSERT INTO Marks Values(2, 'Harshit','Maths',55);
Query OK, 1 row affected (0.00 sec)

mysql> COMMIT;
Query OK, 0 rows affected (0.06 sec)

この例では、COMMITステートメントはトランザクションを明示的に終了し、変更が保存されます。

mysql> SELECT * FROM Marks;
+------+---------+---------+-------+
| Id   | Name    | Subject | Marks |
+------+---------+---------+-------+
| 1    | Aarav   | Maths   | 50    |
| 2    | Harshit | Maths   | 55    |
+------+---------+---------+-------+
2 rows in set (0.00 sec)
ROLLBACKコマンドによる

ROLLBACKコマンドを実行すると、現在のトランザクションは明示的に終了します。この場合、変更はロールバックされます。

テーブル「マーク」に次のデータがあり、トランザクションとROLLBACKコマンドを次のように適用したとします-

mysql> SELECT * FROM Marks;
+------+---------+---------+-------+
| Id   | Name    | Subject | Marks |
+------+---------+---------+-------+
| 1    | Aarav   | Maths   | 50    |
| 2    | Harshit | Maths   | 55    |
+------+---------+---------+-------+
2 rows in set (0.00 sec)

mysql> START TRANSACTION;
Query OK, 0 rows affected (0.00 sec)

mysql> INSERT INTO Marks Values(3, 'Rahul','History',40);
Query OK, 1 row affected (0.00 sec)

mysql> INSERT INTO Marks Values(4, 'Yashraj','English',48);
Query OK, 1 row affected (0.00 sec)

mysql> ROLLBACK;
Query OK, 0 rows affected (0.04 sec)

この例では、ROLLBACKステートメントはトランザクションを明示的に終了し、変更はロールバックされます。

mysql> SELECT * FROM Marks;
+------+---------+---------+-------+
| Id   | Name    | Subject | Marks |
+------+---------+---------+-------+
| 1    | Aarav   | Maths   | 50    |
| 2    | Harshit | Maths   | 55    |
+------+---------+---------+-------+
2 rows in set (0.00 sec)

  1. MySQLルートユーザーの完全な権限を復元するにはどうすればよいですか?

    UPDATEコマンドを使用して、MySQLrootユーザーの完全な権限を復元できます。 まず、 mysqldを停止する必要があります -skip-grant-tablesで再起動します オプション。その後、 mysqlのみを使用してmysqldサーバーに接続します (つまり、-pオプションはなく、ユーザー名は必要ない場合があります)。 mysqlクライアントで以下のコマンドを発行して、完全な権限を持つMySQLrootユーザーを復元します。 UPDATE mysql.user SET Grant_priv = Y, Super_priv = Y WHERE User = root; Qu

  2. MySQLに別のユーザーとしてログインする方法は?

    MySQLに別のユーザーとしてログインする場合は、「mysql-u-pcommand」を使用する必要があります。別のユーザーとしてログインするための構文は次のとおりです。 >mysql -u yourUsername -p After pressing enter key Enter password − 上記の構文を理解するために、MySQLでユーザーを作成しましょう。構文は次のとおりです- CREATE USER 'yourUserName'@'localhost' IDENTIFIED BY 'yourPassword';