※ ChatGPTを利用し、要約された質問です(原文:”パラメータ値を TextBox から String に変換できません)
パラメータ値を TextBox から String に変換できません
このQ&Aのポイント
VB画面のTextBoxの値をSQLのString型フィールドにパラメータ変数をSETしUPDATEするのですが、エラーメッセージが出力されます。
SQL文のパラメータセットの部分で、TextBoxの値が空の場合はDBNull.Valueをセットし、値がある場合はTxtNyukinYoteiYmdの値をセットしています。
VB2008でVB6からのプログラムを改造しているため、SQLのパラメータ変数の使用が初めてであり、(1)と(2)を追加しました。
”パラメータ値を TextBox から String に変換できません
”パラメータ値を TextBox から String に変換できませんでした”
のエラーメッセージ2日間調べても分かりません。何卒ご教示ください。
1・状況:VB画面のTextBoxの値をSQLのString型フィールドにパラメータ変数をSETしUPDATE
するのですが、上記メッセージが出力されます。
●SQL文
UPDATE A22_kensyu SET
cyumon_kin = @cyumon_kin,
途中略
nyukin_yotei_ymd = @nyukin_yotei_ymd, -----(1)
nyukin_kanryo_ymd = @nyukin_kanryo_ymd,-----(2)
torihiki_cd = @torihiki_cd,
torikeshi_kbn = @torikeshi_kbn
WHERE mitumorino = @mitumorino AND
mitumori_eda = @mitumori_eda AND
bunkatuno = @bunkatuno
●パラメータセット
Dim paraNyukinYoteiYmd As IDbDataParameter = command.CreateParameter()
paraNyukinYoteiYmd.ParameterName = "nyukin_yotei_ymd"
paraNyukinYoteiYmd.DbType = DbType.String
If TxtNyukinYoteiYmd.Text = "" Then
paraNyukinYoteiYmd.Value = DBNull.Value
Else
paraNyukinYoteiYmd.Value = TxtNyukinYoteiYmd
End If
command.Parameters.Add(CType(paraNyukinYoteiYmd,
TeLib.CmnDataParameter).GetParameter())
●VB6からVB2008を始めたばかりでまた、SQLのパラメータ変数を使用するのも初めてです。
●もともと動いていたプログラムを改造が必要になり(1)、(2)を付加しました
2.環境
OS:WindowsXp
言語:VB2008
DB:SQLserver2000
お礼
解決いたしました。 本当にありがとうございます。 VB.NET系のまだまだ勉強が足りないようです。