我正在尝试使用 C# 在 Visual Studio 2017 的数据集设计器中设置查询。
我使用 WAMP 作为我的数据库服务器,当我从 wamp 中执行以下命令时,我得到了预期的结果。
SELECT * FROM `product` NATURAL JOIN `contractproduct` WHERE ContractID = 1001
事实上,如果我从 Visual Studio 的设计器中执行完全相同的行,我会得到相同的结果。问题是当我尝试创建如下查询时:
SELECT * FROM `product` NATURAL JOIN `contractproduct` WHERE ContractID =@ID
VS 给我错误:“SQL 文本无法在网格 Pane 和图表 Pane 中表示。”即使我对其他查询使用了 =@VAR 语法。 SQL 本来就不是我的强项,但我真的不明白为什么它在设计器的引擎中工作但后来提示。感谢您的帮助。
编辑:答案是使用内部连接:
SELECT *
FROM product p
INNER JOIN contractproduct c ON p.ProductID = c.ProductID
WHERE c.ContractID =@id
最佳答案
这个问题的答案是使用内部连接。
SELECT *
FROM product p
INNER JOIN contractproduct c ON p.ProductID = c.ProductID
WHERE c.ContractID =@id
这在 Visual Studio 中完美运行,并且如上面评论中所述,是比自然连接更好的做法。
关于c# - 在设计器中设置 mySQL 参数查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48654375/