戻る

トランザクションを使いこなす

ストレージエンジンの種類

ストレージエンジンの確認

SHOW CREATE TABLE tb;

MySQLモニタの裏ワザ「;」の代わりに「\G」

#MySQLのパス
cd c:\xampp\mysql\bin

#文字コードutf8
chcp 65001

#MySQLログイン
mysql -u root -proot

#データベースの切り替え
USE db1;

#デリミタを\Gで表示
SHOW CREATE TABLE tb \G

ストレージエンジンの変更

ALTER TABLE テーブル名 ENGIN=MyISAM;

CREATE TABLE tb1A SELECT * from tb;

ALTER TABLE tb1A ENGIN=MyISAM;

SHOW CREATE TABLE tb1A;

トランザクションの開始

START TRANSACTION;

ロールバック(元に戻す)

ROLLBACK;

コミット(反映)

COMMIT;

START TRANSACTION;

DELETE FROM tb;

SELECT * FROM tb;

ROLLBACK;

SELECT * FROM tb;

自動コミット機能をオフにする

SET AUTOCOMMIT=0;

オフした自動コミット機能をオンにする

SET AUTOCOMMIT=1;

START TRANSACTION;

SET AUTOCOMMIT=0;

INSERT INTO tb VALUES('test',555,555);

ROLLBACK;

SELECT * FROM tb;


次のようなInnoDBが設定されているテーブル「tran」があります。トランザクションを開始し「UPDATE tan SET a=777;」を実行後、コミットせずにMySQLのモニタを終了します。その後、もう一度MySQLモニタを起動し、そのデータがどのようになったかを確認してください。

SELECT * FROM tran;

START TRANSACTION;

UPDATE trans SET a=777;

SELECT * FROM tran;

EXIT;

SELECT * FROM tran;

inserted by FC2 system