2
MemSQLのドキュメントでは、マルチオペレーションのトランザクションがサポートされているかどうかは不明です。簡単な言葉でMemSQLマルチオペレーションのトランザクション
はのは、私は、次のトランザクション
BEGIN
INSERT smth INTO table1
INSERT smth INTO table2
UPDATE table2 SET smt
DELETE FROM table3 WHERE smth
COMMIT
を持っているとしましょう、これはそれが1オペランドに障害が発生した場合、リースのいずれか全体のトランザクションが成功したか、ロールバックすることを意味アトミック操作になりますか?
サポートされていないものはありますか?私が知っている例では、INSERT ... SELECTSはトランザクション内では実行できません。なぜなら、READ_COMMITTED分離レベルのみがサポートされているからです。リストに他のものを追加してもよろしいですか? – dmagda
挿入物の選択がトランザクション内で実行できないことは、どこから確認できましたか?それは動作するはずです: –
'' ' memsql> create table t(a int、b int); memsql> begin; クエリOK、0行に影響(0.00秒) memsql> t値(1,2)に挿入します。 クエリOK、1行に影響(0.00秒) memsql> insert into t select * from t; クエリOK、1行に影響(0.00秒) レコード:1重複:0警告:0 memsql> select * from t; + ------ + ------ + | | b | + ------ + ------ + | 1 | 2 | | 1 | 2 | + ------ + ------ + 2行セット(0.00秒) memsql> rollback; クエリOK、0行に影響(0.00秒) memsql> select * from t; 空集合(0.00秒) ' –