セッションがトランザクションの途中で終了した場合、現在のMySQLトランザクションはどうなりますか?
セッションがトランザクションの途中で終了した場合、現在のMySQLトランザクションはMySQLによってロールバックされて終了するとします。これは、現在のトランザクションで行われたすべてのデータベース変更が削除されることを意味します。セッションが終了すると、暗黙的なロールバックと呼ばれます。
テーブル「マーク」に次の値があるとします
mysql> Select * from marks; +------+---------+-----------+-------+ | Id | Name | Subject | Marks | +------+---------+-----------+-------+ | 1 | Aarav | Maths | 50 | | 1 | Harshit | Maths | 55 | | 3 | Gaurav | Comp | 69 | | 4 | Rahul | History | 40 | | 5 | Yashraj | English | 48 | | 6 | Manak | History | 70 | +------+---------+-----------+-------+ 6 rows in set (0.00 sec) mysql> START TRANSACTION; Query OK, 0 rows affected (0.00 sec) mysql> UPDATE marks SET Name = ‘Yash’ Where id = 5; Query OK, 1 row affected (0.06 sec) Rows matched: 1 Changed: 1 Warnings: 0 mysql> quit; Bye
上記の例では、テーブルの値を更新した後、quitステートメントを実行してセッションを終了します。セッションを再開した後でテーブルを確認すると、セッションがトランザクションの途中で終了したため、更新された値がMySQLによってロールバックされています。
-
MySQLのEXCEPTに相当するものは何ですか?
MySQLではEXCEPTを使用できません。代わりに、NOTIN演算子を使用してください。まずテーブルを作成しましょう- mysql> create table DemoTable ( Number1 int ); Query OK, 0 rows affected (0.71 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values(100); Query OK, 1 row affected (0.14 se
-
MySQLエイリアスの省略形とは何ですか?
名前を明示的に指定する必要があります。そうでない場合は、ASコマンドを削除できます。まずテーブルを作成しましょう- mysql> create table DemoTable ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, Name varchar(20) ); Query OK, 0 rows affected (0.21 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert in