DOBON.NET DOBON.NETプログラミング掲示板過去ログ

(再)ADO.NETでのパラメータクエリ

環境/言語:[vb.net ]
分類:[.NET]

2005/07/14(Thu) 18:17:17 編集(投稿者)

こんにちわ。
以前、ADOでのパラメータクエリの使用方法を聞きましたひろです。

Mooさんに教えていただいたページや本などを参考に
いろいろ試していたのですが、パラメータに値が入らなくて手も足も出なくなりました。
DBはpostgresqlです。エラーは"ERROR [07002] The # of binded parameters < the # of parameter markers"と表示されます。どなたか教えていただけないでしょうか?
おねがいします。


Dim strcn As String
Dim sql As String
strcn = "DSN=Mypostgre;"

Dim prm As New Odbc.OdbcParameter
prm.ParameterName = "test"
prm.OdbcType = Odbc.OdbcType.NText
prm.Direction = ParameterDirection.Output
prm.Value = "a"

Dim ds As New DataSet

sql = "SELECT b FROM cc WHERE a = ?"

Dim da As New Odbc.OdbcDataAdapter(sql, strcn)
    
Try
da.Fill(ds)
Dim tbl As DataTable = ds.Tables(0)
MsgBox("OK")

Catch ex As Exception

MsgBox(ex.Message)
End Try
エラーの内容通りだと思いますが・・・。

このソースでは、コマンドにパラメータを追加していないので、
定義が足りないとエラーが出ています。
prmを作った後放置されています。
da.SelectCommand.Parameters.Add prm
しないと、コマンドのパラメータとして定義して値入れても意味を持ちません。
■No11804に返信(こど。さんの記事)
> エラーの内容通りだと思いますが・・・。
>
> このソースでは、コマンドにパラメータを追加していないので、
> 定義が足りないとエラーが出ています。
> prmを作った後放置されています。
> da.SelectCommand.Parameters.Add prm
> しないと、コマンドのパラメータとして定義して値入れても意味を持ちません。
>
>

解決しました!!!!!!!
こど。さん本当にありがとうございました。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板