- 締切済み
VB.NETでパラメータクエリを使用してAccessに値を設定
こんにちは。 社員番号をNumとして、ボタンクリック時に社員番号が100099の人の名前を抽出したいのですが、「("?Num",'100099')」のカンマで「式が必要です。」となってしまいます。テキストの通りにやっているのですが、うまくいきません。テキストに載ってないこととしては、社員番号がテキスト型なので、「’」で囲んでみました。 どうすれば正しく実行できるでしょうか?以下はコーディングの一部です。 よろしくお願いいたします。 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim Name As String Dim cm As OleDb.OleDbCommand Dim cn As OleDb.OleDbConnection = New OleDb.OleDbConnection( _ "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" _ & "C:\VB_DB\SampleDB2.mdb;Persist Security Info=False") 'パラメータクエリを作成する cm = New OleDb.OleDbCommand("SELECCT 氏名 FROM 社員 " _ & "WHERE 社員番号=?Num", cn) 'パラメータクエリで使う値を設定する cm.Parameters.Clear() cm.Parameters.Add("?Num",'100099') 'パラメータクエリを実行する Name = cm.ExecuteScalar()
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- temtecomai2
- ベストアンサー率61% (656/1071)
ADO.NET で OleDb + *.mdb は使ったことがないので一般的な意見を。 > cm.Parameters.Add("?Num",'100099') コレ、ホントにこう書きました? それでコンパイルできました? 最初の ' 以降がコメントアウトされちゃってません? ' のかわりに " を使い、 cm.Parameters.Add("?Num","100099") もし引用符も含めたいのなら cm.Parameters.Add("?Num","'100099'") となるのでは?
お礼
ご回答ありがとうございました! 理由が他にありました。