我有一个 C# 应用程序(使用 VS 2010 高级版)实现连接到 MS Access 2003 数据库的强类型数据集。我正在这个数据集中实现一个表适配器,其 SQL 脚本是:
SELECT [ID], [Name], [Created By]
FROM [Table Group]
WHERE [Created By] = ?
AND [ID] IN (SELECT [Group ID] FROM [Table Clustering] WHERE [Cluster ID] = ?)
ORDER BY [Name]
问题是它没有返回任何东西,但应该应该返回(我的数据库中有示例数据)。我已经尝试在 MS Access 中实现相同的脚本(用真实数据替换 ?s)并返回我期望的数据。
我通过删除"WHERE [Cluster ID] = ?"
嵌入的 SELECT 语句进行了实验,它返回了数据,但这不是我需要的。
我还通过替换 ? 在具有实际 [Cluster ID] 的嵌入式 SELECT 语句中,它返回数据,但这又不是我需要的。
那么表适配器中的 SQL 脚本有什么问题呢?它能够在 SELECT 中实现 SELECT 吗?此外,它是否能够实施?在 SELECT 中的 SELECT 中?如何?
谢谢你!=)
所以正如预期的那样,IDE 会自动为我所做的表适配器生成一个方法(检索数据),因此我不需要在代码中手动创建 SQL 脚本......供大家参考(以防你不熟悉) ,生成的方法需要两个参数(如预期的那样),一个用于 [Created By],一个用于 [Cluster ID] ... 从这里开始,请参考我在上面发布的问题。:D