是否可以建立从用户表到系统的关系桌子看法?为了给出上下文,我希望我的一个表中的列的值被限制为我的另一个表的列名,这似乎最容易通过查看包含第二个列名的系统视图来完成桌子。
因此,使用经典示例,如果我有一个客户表(FirstName LastName),我想创建另一个表,其中包含一个“customerAttribute”列,该列只能是“FirstName”或“LastName”。为了保持这种动态,如果“customerAttribute”列实际上是系统视图中的一个外键,它存储了 Customer 表中列的名称,那就太好了;这样,在实际的客户表中添加、删除和重命名列时,我不必担心数据完整性问题。
我没有看到在 SQL Server 中创建这种关系的简单方法,所以我想知道是否搞乱/创建与系统表和/或视图的关系是一个主要的禁忌。
谢谢!
PS我问这个问题是为了帮助我解决我在SO上发布的另一个问题。
编辑:即使您不能直接与系统视图建立关系,也许您可以创建一个视图,将查询返回到系统视图(以获取列名),然后与该视图建立关系......我会现在试试。