SQL Server 2012にデータを記録するVB.netプログラムを作成しています。この段階では、データベースに新しい行を作成しようとしています。主キーは自動的にN + 1行を作成し、行を作成するには新しいシリアル番号を入力します。これは先日働いていましたが、それ以外のデータを編集するためにフォームにローをロードすることはできませんでした。VB.netとSQL ServerのINSERTチェックボックスの結果
とにかく、新しい行を作成したときに、すべてのテキストボックスに空白を、すべての日付ボックスに今日の日付を、すべてのチェックボックスに 'false'を返します。私はnullをチェックするコードも追加しました。以下は、私のコードのチェックボックスに結果を挿入するためのコードですが、私はエラー
付近に正しくない構文を取得「=」
:誰もが見ることができるのであれば
Private Sub btnAddNewSerial_Click(sender As System.Object, e As System.EventArgs) Handles btnAdd.Click, btnAddNewSerial.Click
Try
con.ConnectionString = (frmAdmin.lblDBConnection.Text & frmAdmin.txtDBPW.Text & frmAdmin.lblDBConnection2.Text)
con.Open()
cmd.Connection = con
cmd.CommandText = "INSERT INTO SLE1000DB (SK2SoakMainPCB) " & _
"VALUES (@SK2SoakMainPCB)”
cmd.Parameters.AddWithValue("@SK2SoakMainPCB", SqlDbType.Bit).Value = FrmSLE1000.chkSoakInteruptionsMainPCB.Checked
cmd.ExecuteNonQuery()
cmd.Parameters.Clear()
con.Close()
MsgBox("Data updated")
Catch ex As Exception
MessageBox.Show("Error while inserting record on table..." & ex.Message, "Insert Records")
Finally
con.Close()
End Try
Me.Hide()
frmSelect.Show()
End Sub
構文エラーの原因は何ですか?また、チェックボックスに誤った結果が返ってくるような、わかりやすい方法を教えてくれるかもしれません(現時点では正しい結果が返ってきて、それは私がまだ考えていることです)私の目標を達成するための総合的な方法よろしくお願いいたします。私のVB.netとSQL Serverの知識はすべて本からのものなので、残念ながらかなり制限されています!
ここに表示されているコードは単なるスニペットですが、実際にはデータを渡しているカラムがたくさんありますが、構文エラーの原因となっているチェックボックスは "="コードのこのビットのどこにいても、このセクションのステップを踏んで、それに追いついてしまいます。
とにかくお世話になりました!
*デバッグを試しましたか?エラーの発生場所を確認しましたか? *実際のエラーメッセージ*を確認しましたか?あなたは 'AddWithValue'を呼び出し、**列挙メンバ**を** value **として渡しています。列挙は整数として格納されます。次に、**整数**プロパティの値として*ブール値*を設定しようとします。 –
コマンドテキストの最後の二重引用符は実際には二重引用符ではないことに気がつきましたか? – Steve
それはあなたが 'AddWithValue()'を使用する方法ではなく、2番目のパラメータは値であると考えられます。しかし、あなたが実際に問題ではないとにかくそれを直ちに上書きするので、ただの観察です。 – Crowcoder