Oracle SQL Developerを使用してMySQLサーバーに接続したいのですが、自動コミットが無効になっています。デフォルトでは、すべてのMySQL接続で自動コミットが有効になっていますが、これはかなり奇妙なことです。
SQL Developerのグローバル設定がチェックされておらず、
set autocommit=0;
エラーが発生します
接続レベルの自動コミットがオンであるため、自動コミットスクリプトコマンドを強制的にオフに設定します。
接続の設定には、ホスト名、ポート、およびデータベース選択用のドロップダウンボックス以外のオプションはありません。
最新のJDBCコネクタ5.1を備えたSQLDeveloper3.2.10を使用しています。
使用しようとするとエラーが発生します
start transaction;
-- Your SQL statements
commit;
... SQLDeveloperのMySQLデータベースですぐに使用できます(Michaelが別の回答へのコメントで述べたように)。
Michaelがコメントで参照したこのエラーを回避するには、次のヒントを使用できます。
/*sqldev:stmt*/start transaction;
-- Your SQL statements
/*sqldev:stmt*/commit;
この情報が見つかりました ここ 。
Oracle SQL Developerでは4設定が移動しました:
ツール>設定>データベース>詳細>自動コミット
デフォルトはオフです。
代替案:
set autocommit off;
ツール|をクリックすると、自動コミットをオンにできます。環境設定データベースツリーを開き、ワークシートパラメータを選択します。[SQLワークシートで自動コミット]ボックスをオンにします。
Outils-> Preferences-> Fenetre SQL-> Validation automatique de transaction SQLチェックボックスをオフにします
SqlDeveloperの自動コミットオプションをオフにします。 [ツール]-> [設定]-> [データベース]-> [ObjectViewerパラメーター]に移動し、[自動コミットをオンに設定]チェックボックスをオフにします。
set autocommit=false;--or true
--comment required/**/
/*sqldev:stmt*/start transaction;
--your sql
/*sqldev:stmt*/commit;
/*sqldev:stmt*/rollback;
コマンドを「starttransaction」と「commit」で囲みます。 mysqlは、「commit」または「rollback」が発行されるまで、「starttransaction」で自動コミットをオフにしました