我正在开展一个学校项目而且我被困住了,真的很糟糕。我经历了很多网站,并尝试了我遇到的所有建议,但仍然没有任何建议。我试过过滤数据网格和SQL语句没有运气,教授很难过。对其他帖子的一些回复说要使用Dataview.Filter,但在VS 2013中我并没有选择使用Office 2010。
这是问题所在。我有一个表单,其中CustomerID,FirstName,LastName作为访问数据库表的数据绑定文本框。 datagrid与CustomerID,DateEntered,Notes。
列绑定到同一个db我希望datagrid中的信息显示与表单上的CustomerID关联的所有注释。例如:如果表单上的CustomerID为2,则应显示与ID关联的数据网格中的所有注释。现在我正在尝试使用SQL语句执行此操作并在不同区域尝试过它并且没有运气。这是我尝试使用点击事件的代码,我不知道这是否正确。数据网格仍然显示所有客户的所有注释,因此我猜测缺少某些内容以说明应该放置哪些结果。请帮忙。
Private Sub btnRun_Click(sender As Object, e As EventArgs) Handles btnRun.Click
Dim SQLstr As String
SQLstr = "SELECT Notes.CustomerID, Notes.MemoEntered, Notes.Notes, Customer.CustomerID, Customer.FirstName, Customer.LastName"
SQLstr = "FROM (Notes INNER JOIN Customer ON Notes.CustomerID = Customer.CustomerID AND Notes.CustomerID = Customer.CustomerID)"
SQLstr = "WHERE Notes.CustomerID = Customer.CustomerID"
End Sub
答案 0 :(得分:0)
我想出了发布后一两个小时我需要做些什么。以下是我为获得想要的结果所做的工作:
Private Sub btnRun_Click(sender as Object,e As EventArgs)处理btnRun.Click
Dim SQLstr As String
SQLstr = "SELECT Notes.CustomerID, Notes.MemoEntered, Notes.Notes, Customer.CustomerID, Customer.FirstName, Customer.LastName"
SQLstr = "FROM (Notes INNER JOIN Customer ON Notes.CustomerID = Customer.CustomerID AND Notes.CustomerID = Customer.CustomerID)"
SQLstr = "WHERE Notes.CustomerID = Customer.CustomerID"
NotesBindingSource.Filter = "[CustomerID] = '" & CustomerIDTextBox.Text & "'"
DataGridView1.Refresh()
End Sub
在底部添加两行就可以了,现在我只能看到与我正在查看的客户相关的注释。谢谢。
拉吉