【发布时间】:2013-06-26 12:10:23
【问题描述】:
我正在使用 sql server 作为后端和 vb 作为前端来制作一个小型数据库,我几乎已经成功了,但是我偶然发现了这个错误:
“System.Data.SqlClient.SqlException”类型的未处理异常 发生在 System.Data.dll
附加信息:多部分标识符 无法绑定“System.Data.DataRowView”。
这是我的代码:
Imports System.Data.SqlClient
Public Class searchDialog
Private Sub searchDialog_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
'TODO: This line of code loads data into the 'SearchDataSet.Books' table.
'You can move, or remove it, as needed.
Me.BooksTableAdapter.Fill(Me.SearchDataSet.Books)
End Sub
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
Dim ds As New DataSet
Dim query As String = "select * from Books where " + colNames.SelectedValue.ToString + " LIKE " + "'%" + colValues.Text + "%'"
BooksTableAdapter.Connection.Open()
Dim adp As New SqlDataAdapter(query, BooksTableAdapter.Connection.ConnectionString)
adp.Fill(ds, "Books")
BooksTableAdapter.Connection.Close()
filteredRecords.DataSource = ds
filteredRecords.DataMember = "Books"
End Sub
End Class
【问题讨论】:
-
什么是 colNames 和 colValues?
-
如果您使用的是 Visual Studio,请在设置查询的行上设置一个断点。然后下一步调试 (f8)。变量“查询”中有什么?看起来您的组合框 (colNames) 没有设置 value 属性,或者它被设置为数据行。
-
在您的加载方法中,您可能希望将 Me.BooksTableAdapter.Fill 放入 !IsPostBack...
标签: sql-server vb.net winforms data-binding