查询表达式 '' 中的语法错误(缺少运算符)
Syntax error (missing operator) in query expression ''
我现在几个小时都收到这个特定的错误,我仍然无法弄清楚我的 select 语句有什么问题,我正在尝试连接 3 个表。
"SELECT POItem.PO AS 'Purchase_Order', POItem.Qty AS 'Quantity',
POItem.BCurr as 'Currency', POItem.TotalCost, PO.Vendor, Master.Desc1
FROM PO
LEFT JOIN POItem ON PO.ID = POItem.PO AND
INNER JOIN Master ON Master.IPN = POItem.IPN
WHERE POItem.IPN = '" & TextBox1.Text & "'
ORDER BY POItem.PO DESC"
这个位置(INNER JOIN
前面)有一个不需要的AND
关键字。如果您删除它并在 LEFT JOIN
周围添加方括号,您的查询应该有效:
"SELECT POItem.PO AS 'Purchase_Order', POItem.Qty AS 'Quantity',
POItem.BCurr as 'Currency', POItem.TotalCost, PO.Vendor, Master.Desc1
FROM (PO
LEFT JOIN POItem ON PO.ID = POItem.PO)
INNER JOIN Master ON Master.IPN = POItem.IPN
WHERE POItem.IPN = '" & TextBox1.Text & "'
ORDER BY POItem.PO DESC"
顺便说一下,不要在字符串中包含 TextBox1.Text
的值,而是使用参数以避免 SQL 注入攻击。
我现在几个小时都收到这个特定的错误,我仍然无法弄清楚我的 select 语句有什么问题,我正在尝试连接 3 个表。
"SELECT POItem.PO AS 'Purchase_Order', POItem.Qty AS 'Quantity',
POItem.BCurr as 'Currency', POItem.TotalCost, PO.Vendor, Master.Desc1
FROM PO
LEFT JOIN POItem ON PO.ID = POItem.PO AND
INNER JOIN Master ON Master.IPN = POItem.IPN
WHERE POItem.IPN = '" & TextBox1.Text & "'
ORDER BY POItem.PO DESC"
这个位置(INNER JOIN
前面)有一个不需要的AND
关键字。如果您删除它并在 LEFT JOIN
周围添加方括号,您的查询应该有效:
"SELECT POItem.PO AS 'Purchase_Order', POItem.Qty AS 'Quantity',
POItem.BCurr as 'Currency', POItem.TotalCost, PO.Vendor, Master.Desc1
FROM (PO
LEFT JOIN POItem ON PO.ID = POItem.PO)
INNER JOIN Master ON Master.IPN = POItem.IPN
WHERE POItem.IPN = '" & TextBox1.Text & "'
ORDER BY POItem.PO DESC"
顺便说一下,不要在字符串中包含 TextBox1.Text
的值,而是使用参数以避免 SQL 注入攻击。