我有两个简单的表(没有约束、一个主键、没有触发器等)托管在 SQL Server 上,它们具有相同的架构。由于各种原因,我必须将表格分开,但我希望能够将它们合并在一起以进行监督。我希望一名工作人员能够通过这个联合视图编辑表格。
GlobalID 是每个表的主键,并且在联合视图中也是唯一的。
CREATE VIEW V_View AS
SELECT
[GlobalID]
,[UserComment]
FROM
TABLE_A
UNION
SELECT
[GlobalID]
,[UserComment]
FROM
TABLE_B
我尝试通过几个应用程序(Code on Time 和 Microsoft Access)编辑此视图中的数据,但出现相同的错误:
更新或插入视图或函数 V_View 失败,因为它包含派生字段或常量字段
如果我从视图中删除联合,以便只有一个或另一个表起作用,则编辑可以完美地工作,因此我确信是 UNION 命令阻止了编辑。
有什么方法可以使这样的视图可编辑吗?我可以用不同的方式构造它,以便派生/恒定错误不会妨碍编辑吗?