我试图弄清楚如何根据按钮点击从访问数据库中显示某些数据。例如,如果我单击“库存”按钮,则会显示项目缺货的数据库中的项目。我能够打开连接并显示查询信息,但它是一个很长的LINQ查询,我不知道它来自哪里。有关如何显示数据库信息的任何建议?即客户信息,库存物品等......
Option Strict On
Imports System.Data.OleDb
Public Class frmMicroland
Dim con As New OleDbConnection
Private Sub btnStockItems_Click(sender As System.Object, e As System.EventArgs) Handles btnStockItems.Click
Dim query1 = From anyOrder In MICROLANDDataSet.Orders
Join itsStockItem In MICROLANDDataSet.Inventory
On anyOrder.itemID Equals itsStockItem.itemID
Let orderQuantity = anyOrder.quantity
Select itsStockItem.quantity, itsStockItem.description, anyOrder.itemID
Order By quantity, itemID
''Test connection to make sure it opens first
Try
con = New OleDb.OleDbConnection("provider= microsoft.ace.oledb.12.0;Data Source = C:\Users\HPG62-220US\Documents\Visual Studio 2010\Projects\Asignment 9\Asignment 9\bin\Debug\MICROLAND.accdb; Persist Security Info=False;")
Try
Call con.Open()
Catch ex As Exception
MessageBox.Show("Could not connect")
End Try
If con.State = ConnectionState.Open Then
MessageBox.Show("Connection is open")
End If
Catch ex As Exception
End Try
lstOutput.Items.Add("Here are the items that are out of")
lstOutput.Items.Add("inventory or must be reordered.")
lstOutput.Items.Add("")
lstOutput.Items.Add("The numbers shown give the")
lstOutput.Items.Add("minimum reorder quantity required.")
lstOutput.Items.Add("")
lstOutput.Items.Add(query1)
con.Close()
End Sub
Private Sub btnTodaysOrders_Click(sender As System.Object, e As System.EventArgs) Handles btnTodaysOrders.Click
End Sub
End Class
答案 0 :(得分:0)
这里有一些不同的事情......
首先,您需要在btnStockItems_Click过程之外声明一个可以存储返回数据集的变量。有点像:
Dim con As New OleDbConnection
Dim ReturnedData as Datatable
然后在您的btnStockItems_Click过程中,您需要填充该数据表:
ReturnedData = query1.CopyToDataTable
现在您可以在每次按钮点击中使用数据。
我看到的下一个问题是,您似乎没有输入正确的数据...... 例如,您从未在查询1中提取订单日期,但您希望知道今天的订单。
假设你修复了它并且它被调用了,在query1中说“OrderDate”,你可以做的就是用你的ReturnedData数据表中的linq查询填充你的listview:
From rw in ReturnedData where OrderDate = xxx select rw.item("itemID").tostring
...我在没有IDE的情况下这样做,所以拼写可能会关闭,但我希望这可以让你知道去哪里......