【发布时间】:2021-12-13 23:58:59
【问题描述】:
我正在尝试从具有所选客户 ID 的客户帐户数据库中检索特定值。我不确定该怎么做,这就是我目前所拥有的。
我将从组合框中选择客户 ID,那么我将如何在我的代码中使用 SQL 声明它?
Dim con As New OleDbConnection 'a new connection for the database is assigned
con.ConnectionString = "Provider =Microsoft.ACE.OLEDB.12.0; data source= C:\Users\Hamza\Documents\POS system1.accdb "
con.Open()
Dim cmd As OleDbCommand
Dim dr As OleDbDataReader
cmd = New OleDbCommand("Select Points from customers WHERE CustID= @CustID", con) 'query used to select all field
dr = cmd.ExecuteReader
txtdiscount.Text = Convert.ToInt32(dr)
con.Close()
【问题讨论】:
-
您缺少将 OleDbParameter 添加到 OleDbCommand。
-
...另外,您当前的代码要求您
dr.Read()读者,或使用ExecuteScalar。 -
要考虑的另一件事是,如果您只从数据库返回一个值,您可以考虑使用 ExecuteScaler。另请注意,dr 是一个对象,其中包含返回的每个字段的属性,然后您必须阅读
-
@HardCode 谢谢!你知道我该怎么做吗?
-
不能使用 dLookup 吗? support.microsoft.com/en-us/office/…
标签: sql database vb.net ms-access