|
分類:[.NET 全般]
開発環境:XPPro 使用言語:VS.NET 2003
お世話になります。
SQLServer2000のデータベースに、[顧客]というテーブルがあります。 あるフォームにある[更新]ボタン(btnKosin)をクリックすると、 そのテーブルにおいて、[性別](nvarchar型)が「男」であるレコードの[F](tinyint型)というフィールドの値を、「1」に更新したいと考えています。 このテーブルへの接続文字列を変数pbstrSetuzokuに格納しています。
以下のコードを実行するのですが、For〜Nextのループが2回目のループでエラーになり、更新ができません。どなたかお分かりになる方がいらっしゃいましたら、ご教示お願いします。 (コード開始)*************************************************************** Private Sub btnKosin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnKosin.Click Dim i As Integer Dim strSQL As String Dim cn As SqlClient.SqlConnection Dim da As SqlClient.SqlDataAdapter Dim dt As DataTable Dim ds As New DataSet Dim dr As DataRow() Dim scb As SqlClient.SqlCommandBuilder
i = 0
Try strSQL = "SELECT [性別],[F] FROM [顧客]" cn = New SqlClient.SqlConnection(pbstrSetuzoku) da = New SqlClient.SqlDataAdapter(strSQL, cn) da.Fill(ds, "顧客") dt = ds.Tables("顧客") dr = dt.Select("[性別]='男'")
If dr.Length > 0 Then For i = 0 To dr.Length - 1 dr(i).BeginEdit() dr(i)("F") = 1 scb = New SqlClient.SqlCommandBuilder(da) da.Update(ds, "顧客") Next MsgBox("更新しました。") Else Exit Sub End If Catch ex As Exception (例外処理の記述) End Try End Sub (コードの終了)***************************************************************
以上、よろしくお願いいたします。
|