2013-07-24 19 views
5

Oracle SQL Developerを使用してMySQLサーバーに接続したいが、自動コミットを無効にしたい。デフォルトでは、すべてのMySQL接続に自動コミットが有効になっています。これはむしろ奇妙です。エラー接続の設定でMySQLを使用しているときにSQL Developerで自動コミットを無効にする

set autocommit script command forced off, as connection level autocommit is on.

でSQL Developerのグローバル設定がオフになっている

、および

set autocommit=0; 

結果は、ホスト名、ポート以外の他のオプションとドロップダウンボックスのためではありませんデータベースの選択。

SQL Developer 3.2.10を最新のJDBCコネクタ5.1で使用しています。

答えて

3

を発行しています(マイケルが別の答えにコメントで述べたように。)のsqldeveloperでのMySQLデータベース上のマイケルは彼のコメントで参照このエラーを回避するために

次のヒントを使用することができます

/*sqldev:stmt*/start transaction; 

-- Your SQL statements 

/*sqldev:stmt*/commit; 

この情報が見つかりましたhere

+0

ありがとう、これは動作します。 – Michael

0

'start transaction'と 'commit'でコマンドを囲みます。 MySQLは「コミット」または「ロールバック」まで、「トランザクションを開始」に自動コミットをオフあなたは

start transaction; 

-- Your SQL statements 

commit; 

を試してみて、使用している場合は、ボックスの外に...エラーに遭遇します

+1

これはエラーで終了します: 'エラーがコマンドで1行目から始まる: START TRANSACTIONを エラーレポート: ファイルを開くことができません: "TRANSACTION.sql"' – Michael

1

Outils - >設定 - > Fenetre SQL - >検証AUTOMATIQUEデ取引SQL チェックボックス

+0

いいえ、これはMySQL接続で自動コミットを切り替えません。 – Michael

0
チェックを外しオートのsqldeveloperでコミットオプションをオフにし

。 「ツール」 - >「環境設定」 - >「データベース」 - >「ObjectViewerパラメータ」に移動し、「自動コミットを設定」のチェックボックスをオフにします。

+0

'自動コミット= trueの場合、ロールバックを呼び出せません。 ' – Michael

-1

sysadminとしてsysadminを接続し、コマンド "SET AUTOCOMMIT OFF"を入力すると、コマンドとしてオフになります。 uはそれがタイプのコマンド「ショーの自動コミット」オフになっているかをチェックし、それが のように表示したい場合 と「OFF自動コミット」

+0

この質問は、MySQLデータベースに接続するOracle SQL Developerに関するものです。 sqlplusは関与しません。 – Michael

1
あなたはツールに クリックして自動コミットをオンにすることができます

|環境設定 オープンツリーがワークシートを選択 データベースは、Oracle SQL DeveloperのでSQLワークシートボックスでオートコミットに

5

を チェックパラメータ設定が移動しました:

Tools > Preferences > Database > Advanced > Autocommit

デフォルトはオフです。

オルタナティブ:

set autocommit off; 
+0

残念ながら、MySQLデータベースを使用している場合、この設定は無視されます。 – Creature

0
set autocommit=false;--or true 
--comment required/**/ 
/*sqldev:stmt*/start transaction; 
--your sql 
/*sqldev:stmt*/commit; 
/*sqldev:stmt*/rollback; 
関連する問題