私はこの機能を使用して、社員テーブルの従業員の詳細を取得します。私はデータベース用にvb.net 2012とMS Accessを使用しています。私の問題は、autonumberと主キーの属性/データ型を持つIDを使用して従業員の詳細を取得する方法です。ここに私のコードは次のとおりです。自動番号主キーフィールドを取得する
Public Sub DisplayEmployeeDetail()
Try
sqlEmployeeInfo = "SELECT * FROM tblEmployees WHERE tblEmployees.ID = " + txtDTRidnum.Text + ";"
Dim da As OleDb.OleDbDataAdapter = New OleDbDataAdapter(sqlEmployeeInfo, con)
Dim ds As New DataSet
da.Fill(ds, "tblEmployees")
Dim temp = ds.Tables("tblEmployees").Rows.Count
For i = 0 To temp - 1
lblFname.Text = CStr(ds.Tables("tblEmployees").Rows(i).Item("FirstName"))
lblLname.Text = CStr(ds.Tables("tblEmployees").Rows(i).Item("LastName"))
lblMname.Text = CStr(ds.Tables("tblEmployees").Rows(i).Item("MiddleName"))
lblAddress.Text = CStr(ds.Tables("tblEmployees").Rows(i).Item("Address"))
lblPosition.Text = CStr(ds.Tables("tblEmployees").Rows(i).Item("Position"))
Next
Catch ex As Exception
MessageBox.Show("Error in load: " & ex.ToString, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
End Sub
それはSystem.Data.OleDb.Exceptionを与える:構文エラー(演算子がありません)クエリ式で 'tblEmployees.ID ='
パラメータを使用すると、この問題は発生しません...また、employeeidは文字列ではなく整数型で、セミコロンを削除する必要があります。 – Codexer
...文字列連結ではなく&演算子演算子+を使用し、カッコと[]で囲んだテーブルを折り返してください。 – Codexer
うわー!私はパラメータを使用しようとしましたが、エラーはなくなりましたが、行が返されませんでした。 – emman