输入参数值,但我已经在查询中包含一个
Enter parameter value but I've already included one in the query
我的 VB6
项目中有一个 SQL 查询,它在 Ms-Access
数据库中执行三向 INNER JOIN
。
VB6
查询是:
SQL = "SELECT popsLines.stockCode, popsLines.orderNumber, popsOrders.dateOrdered, popsReceipts.dateReceived, popsReceipts.reference" & _
" FROM (popsOrders INNER JOIN popsLines ON popsOrders.orderNumber = popsLines.orderNumber)" & _
" INNER JOIN popsReceipts ON popsOrders.orderNumber = popsReceipts.orderNumber" & _
" WHERE (([WHERE popsLines].[stockCode]=" & sqlString(m_sStockCode) & "));"
这没有用,它返回了一个错误
No value given for one or more required parameters
接下来我做的就是复制 SQL 变量中的值并将其粘贴到 Access 查询中,并使用 m_sStockCode
参数的值。
SELECT popsLines.stockCode, popsLines.orderNumber, popsOrders.dateOrdered, popsReceipts.dateReceived, popsReceipts.reference
FROM (popsOrders INNER JOIN popsLines ON popsOrders.orderNumber = popsLines.orderNumber)
INNER JOIN popsReceipts ON popsOrders.orderNumber = popsReceipts.orderNumber WHERE (([WHERE popsLines].[stockCode]="010010003"));
执行这个的时候,它说
Enter Parameter Value: WHERE popsLines.StockCode
为什么它不按原样接受查询?
我也尝试过将 WHERE
子句更改为
(( WHERE [popsLines].[stockCode]="010010003"));
但是得到了
Syntax error (missing operator) in query expression '((WHERE [popsLines].[stockCode]="010010003"))'
最后一部分 - 您的 WHERE 子句 - 是乱码。它应该是:
.. WHERE ([popsLines].[stockCode]='010010003');
我的 VB6
项目中有一个 SQL 查询,它在 Ms-Access
数据库中执行三向 INNER JOIN
。
VB6
查询是:
SQL = "SELECT popsLines.stockCode, popsLines.orderNumber, popsOrders.dateOrdered, popsReceipts.dateReceived, popsReceipts.reference" & _
" FROM (popsOrders INNER JOIN popsLines ON popsOrders.orderNumber = popsLines.orderNumber)" & _
" INNER JOIN popsReceipts ON popsOrders.orderNumber = popsReceipts.orderNumber" & _
" WHERE (([WHERE popsLines].[stockCode]=" & sqlString(m_sStockCode) & "));"
这没有用,它返回了一个错误
No value given for one or more required parameters
接下来我做的就是复制 SQL 变量中的值并将其粘贴到 Access 查询中,并使用 m_sStockCode
参数的值。
SELECT popsLines.stockCode, popsLines.orderNumber, popsOrders.dateOrdered, popsReceipts.dateReceived, popsReceipts.reference
FROM (popsOrders INNER JOIN popsLines ON popsOrders.orderNumber = popsLines.orderNumber)
INNER JOIN popsReceipts ON popsOrders.orderNumber = popsReceipts.orderNumber WHERE (([WHERE popsLines].[stockCode]="010010003"));
执行这个的时候,它说
Enter Parameter Value: WHERE popsLines.StockCode
为什么它不按原样接受查询?
我也尝试过将 WHERE
子句更改为
(( WHERE [popsLines].[stockCode]="010010003"));
但是得到了
Syntax error (missing operator) in query expression '((WHERE [popsLines].[stockCode]="010010003"))'
最后一部分 - 您的 WHERE 子句 - 是乱码。它应该是:
.. WHERE ([popsLines].[stockCode]='010010003');