我在 Access 2007 中有一个非常简单的数据库,我正在使用 VB 2010 连接它。有两个表,MenuItems 和 Orders,Orders.orderDate 的类型为“Date”。
我正在我的一种 VB 表单中运行以下代码(连接字符串和其他一切都很好):
sql = "SELECT OrderDate, MenuItem FROM MenuItems, Orders WHERE Orders.itemID = MenuItem.ID AND Orders.orderDate BETWEEN '" + fromDate + "' AND '" + toDate + "'"
Dim cmd As New OleDb.OleDbCommand(sql, con)
Dim count As Integer = cmd.ExecuteNonQuery()
但我收到一个错误:
System.Data.OleDb.OleDbException (0x80040E10): value wan't given for one or more of the required parameters
似乎什么都没有。我对另一个查询使用了相同的代码,除了 sql 不同。但我认为我的 sql 足够简单。这是在一个实例中生成的 sql(我已经仔细检查过,所有表名和列名都是正确的):
SELECT OrderDate, MenuItem From MenuItems, Orders WHERE Orders.itemID = MenuItem.ID AND Orders.orderDate BETWEEN '11/21/2012' AND '11/24/2012'