我正在使用一些我完全不熟悉的强类型 SQL 表适配器进行项目。我通过设计器添加了一个新列,但以前存在的查询(基本提取)不会看到新列。经过一番折腾,我终于通过以下方式“看到”了查询构建器中的新列:
1)右键单击查询,选择“配置”
2)点击“上一个”按钮,直到提示我选择我的数据库连接字符串。
我不得不将其更改为包含新列的开发数据库
3) 使用“下一步”按钮继续完成向导,无需进行任何其他更改。
应该注意的是,即使我已经通过设计器手动添加了列,这些步骤也是必需的。
一旦我这样做了,附加到设计器中的表的查询就可以很好地“看到”新列。我们将把这个更新的表称为 FirstTable。
但是,我遇到了另一个来自另一个表的预先存在的查询的问题,该表与 FirstTable 进行了联接。这另一个表我将调用 SecondTable。
我右键单击 SecondTable,选择“配置”,然后在向导中点击“上一个”,这样我就可以选择正确的连接字符串。完成了向导,大概是用这个新的连接字符串重新设计了 SecondTable(这个表没有实际的变化)。
但是,将 SecondTable 连接到 FirstTable 的查询无法看到 FirstTable 中的新列。
我最后一次尝试是删除在这两个表之间映射的“关系”,然后重新创建它。我认为这将允许 SecondTable 看到 FirstTable 中的新列,以便可以在连接中使用它。
目前,无论我是直接修改 SELECT 语句还是使用查询生成器(查询生成器根本看不到新列,并且不会让我添加它),我都会收到“无效的列名”错误手动)。而且我确实完全限定了表名(例如 dbo.TableName.ColumnName)
几个小时以来,我一直在努力解决这个问题。有人有任何提示吗?
编辑:我在查询生成器中重新添加了 FirstTable 以查看它是否会刷新可用的列数据。没有运气 - 它仍然停留在旧的列名上。