[Seasar-user:16047] Re: [S2JDBC-Gen] Exe-Sql について

Toshihiro Nakamura [E-MAIL ADDRESS DELETED]
2008年 10月 17日 (金) 18:37:02 JST


中村(taedium)です。

> こんなSQLでやっぱりデータベースでtrigger作ろうとしたところ
> 
> CREATE trigger "BI_TEST_TABLE" ... (略) ... :NEW.ID from dual
> end
> 
> この2行になってendでエラーがでてしまいました

すみませんm(_)m
CREATE TRIGGERに対応できていませんでした。
修正します。

もし、現時点のバージョンでなんとかしたいのであれば
(OracleGenDialectなどを拡張して)
org.seasar.extension.jdbc.gen.dialect.GenDialectの実装を作成し
createSqlBlockContext()メソッドで
SqlBlockContextインタフェースの正しい実装を返すように調整してください。
SqlBlockContextの実装クラスをみてもらえるとわかりますが、
"trigger"とすべき文字列を"triger"とスペルミスしています。
これを直すだけでCREATE TRIGGER内の「;」で区切られなくなります。

必要であればSNAPSHOTを発行しますので言ってください。

> select 1 from dual;select 2 from dual;
> 
> の場合、2つ目の2のセレクトは実行されないんですね。。。
> (普通ですがドキュメントに明記したほうが安全かもしれません)

そうですね。
2番目のSQLも実行されるように修正するか
ドキュメントに明記するかどちらかの対応をとりたいと
思います。

-- 
Nakamura Toshihiro <[E-MAIL ADDRESS DELETED]>



Seasar-user メーリングリストの案内