[pgsql-jp: 36135] Re: psqlメタコマンドとトランザクション
Tatsuo Ishii
ishii @ sraoss.co.jp
2005年 10月 14日 (金) 10:14:45 JST
石井です.
> 水野です。
>
>
> > -----Original Message-----
> > メタコマンドの実行は別物として動作するのでしょうか?
>
> この動きがあるべき動作なのかは別にして、
> 後ろに続くのがメタコマンドの場合は”;”がなくても
> トランザクションが開始される、というかメタコマンド経由で
> 実行したコマンドはキー入力と独立したトランザクションとして
> 扱われているようです。(検証に使ったのは Windows版8.0.3)
トランザクションとかは関係ないですね.単にpsqlは;が入力されるまではバッ
クエンドにSQLコマンドを送信しないだけです.
> 【実験 その1】
> −−−−ここから−−−−ここから−−−−
> template1=# begin ←”;”なしでbeginをタイプ
> template1-# \d ←メタコマンド実行
> リレーションの一覧
> スキーマ | 名前 | 型 | 所有者
> ----------+------------------+----------+----------
> public | geometry_columns | テーブル | postgres
> public | pg_logdir_ls | ビュー | postgres
> public | spatial_ref_sys | テーブル | postgres
> (3 行)
>
> template1-# ; ←beginを完結させる目的で”;”をタイプ
> WARNING: there is already a transaction in progress
> BEGIN ↑もう始まった事になっている
これ,おかしいですね.もしかして,
\set AUTOCOMMIT off
とかしてませんか?
--
SRA OSS, Inc. Japan
Tatsuo Ishii
pgsql-jp メーリングリストの案内