[Seasar-s2dotnet 110] Re: S2DAO.NETのFirebird対応に関して
Ota Wataru
ota
2006年 1月 13日 (金) 11:06:26 JST
Ota Wataruです
藤井さんよろしくです
> テスト環境はOracleのEMP表をベースに作ったものですが、一部の列にデータを
> 格納するようなクラスを作って、InsertやUpdateをしようとするとエラーが発生
> します。
確認してみましたがパラメータクエリーのバインド変数へ名称の設定が
失敗していたのでBindVariableNode.csの該当箇所を修正しコミット
しておきました。
> Firebirdの.NET Providerのドキュメントを調べてみると、
> custDA.InsertCommand = new FbCommand("INSERT INTO customer (CustomerID,
> customer) " + "VALUES (?, ?)", conn, txn);
> custDA.UpdateCommand = new FbCommand("UPDATE customer SET custno =?,
> customer = ? " + "WHERE custno = ?", conn, txn);
> とありました。
> DataProviderUtilクラスのGetBindVariableTypeメソッドの中でFirebirdは
> BindVariableType.Questionではないかと思いますが、いかがでしょうか?
此方で確認している.NET Providerのバージョンは公式サイトに
>Version 1.7.0a is the most recent stable version
とあるので1.7.1では試していませんが
1.7.1もSDKドキュメントのFbParameterクラスには
> Parameter names are not case sensitive
myDataAdapter.SelectCommand.Parameters.Add("@CategoryName", FbDbType.VarChar, 80).Value = "toasters";
myDataAdapter.SelectCommand.Parameters.Add("@SerialNum", FbDbType.Integer).Value = 239;
myDataAdapter.Fill(myDataSet);
とあるので現状で現状でOKではないかと・・・
時間が無かったので?マーカでの動作確認はしていません
Firebirdへの対応要望があったため実装してみましたが、Firebirdに関して
の知識を持ち合わせておりませんorz
(今回の対応の為に始めてセットアップしました)
なので、詳しいのであれば今後は藤井さんにFirebirdに関する部分はお願い出来ると
助かります。
seasar-dotnet メーリングリストの案内