外键不能连接到非本地对象-
它们必须引用本地表。您收到“最大前缀数”错误,因为您引用的表具有4部分的名称(linkedServer.Database.Schema.Object),而本地对象只有3部分的名称。
其他解决方案:
- 将数据从源(视图的位置)复制到与您要在其中添加键的表相同的服务器上。您可以每小时,每天或以其他方式执行此操作,具体取决于源数据的更改频率。
- 在源表上添加触发器,以将所有更改推送到本地副本。这基本上与#1相同,但是会立即发生变化
- 在您的表中添加一个INSTEAD OF“触发器,该触发器通过从链接服务器中进行选择并比较您尝试进行INSERT / UPDATE的值来手动检查外键约束。如果不匹配,则可以拒绝更改。



