実行時にUpdateCommandのパラメーターに値をセットする方法
- 題名: 実行時にUpdateCommandのパラメーターに値をセットする方法
- 著者: 義雄
- 日時: 2012/09/20 12:30:52
- ID: 30949
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[1]: 実行時にUpdateCommandのパラメーターに値をセットする方法
- 著者: 義雄
- 日時: 2012/09/20 16:54:09
- ID: 30951
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[2]: 実行時にUpdateCommandのパラメーターに値をセットする方法
- 著者: オショウ
- 日時: 2012/09/20 20:25:08
- ID: 30954
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[3]: 実行時にUpdateCommandのパラメーターに値をセットする方法
- 著者: オショウ
- 日時: 2012/09/20 20:27:16
- ID: 30955
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[4]: 実行時にUpdateCommandのパラメーターに値をセットする方法
- 著者: 義雄
- 日時: 2012/09/21 1:05:32
- ID: 30957
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[5]: 実行時にUpdateCommandのパラメーターに値をセットする方法
- 著者: shu
- 日時: 2012/09/21 9:26:40
- ID: 30959
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[6]: 実行時にUpdateCommandのパラメーターに値をセットする方法
- 著者: 義雄
- 日時: 2012/09/21 11:11:41
- ID: 30960
- この記事の返信元:
- この記事への返信:
- ツリーを表示
分類:[.NET]
義雄と申します。
とある掲示板に質問を致しました。
http://oshiete.goo.ne.jp/qa/7702747.html
頂いた回答に一時は納得したのですがどうにも解せません。
こちらで再質問させて下さい。
マルチポスト規定に当たるのであれば削除致します。
' -------------------------- ここから --------------------------------
データベースの更新についてご指導下さい。
VB2010からSQLサーバーのデータベースに接続しております。
dataAdapter.Updateによりデータベースを更新する際の
パラメーターへ値をセットする方法を教えて下さい。
テーブル名Test
Code Name
------------
A Suzuki
希望する処理
テキストボックスに入力された名前に変更
例) Suzuki → Yamada
○フォームの変数として定義
Dim dataAdapter As New SqlDataAdapter
Dim dataSet As New DataSet
○FormLoad時にSelectCommandとUpdateCommandを設定
Dim SQL As String = ""
Dim command As SqlCommand
Dim connection As SqlConnection = New SqlConnection(〜)
SQL = "SELECT * FROM Test WHERE Code = @code "
command = New SqlCommand(SQL, connection)
dataAdapter.SelectCommand = command
dataAdapter.SelectCommand.Parameters.Add("@code", SqlDbType.Char)
SQL = "UPDATE Test SET Name = @name WHERE Code = @code"
command = New SqlCommand(SQL, connection)
dataAdapter.UpdateCommand = command
dataAdapter.UpdateCommand.Parameters.Add("@code", SqlDbType.Char)
dataAdapter.UpdateCommand.Parameters.Add("@name", SqlDbType.Text, 50)
○データ表示時にはこれで表示されました。
dataAdapter.SelectCommand.Parameters.Item("@code").Value = ComboBoxCode.text
dataAdapter.Fill(dataSet)
○このSelectCommandを参考にこのように書いて見たのですが更新されません。
dataAdapter.UpdateCommand.Parameters.Item("@code").Value = ComboBoxCode.Text
dataAdapter.UpdateCommand.Parameters.Item("@name").Value = TextBoxName.Text
dataAdapter.Update(dataSet)
どのようにしたら実行時にパラメーター化したところへデータをセットできるのでしょうか?
データセットに値が入っていないのでは?と予想したのですが…。
' -------------------------- ここまで --------------------------------
その後、更にサイト検索を行い、やはりパラメーターにセットできるのではないか?
と思い始めました。これらがそう思ったサイトです。
http://msdn.microsoft.com/ja-jp/library/system.data.sqlclient.sqldataadapter.insertcommand.aspx
http://msdn.microsoft.com/ja-jp/library/vstudio/bbw6zyha(v=vs.90).aspx
エラーや例外が出ず、dataAdapter.Update(dataSet)の値も0です。
どのようにしたら実行時にパラメータの値にセットできるのでしょうか。
現状では直接SQL文をExecuteNonQueryで発行しております。