我的存储过程正在尝试将记录写入另一个服务器上的数据库.声明如下:
IF @Builds > 0 BEGIN SET @DPU = @Failures / @Builds INSERT INTO sql05.ManufacturingPortal.dbo.OPC.WriteRequests (ID,RegisterID,Value,RequestedDate,IsCompleted) VALUES(@PLCID,'F8:10',CAST(@DPU AS NUMERIC(10,2)),GETDATE(),0) END
但是,当我尝试创建存储过程时 – 我收到以下错误:
The object name 'sql05.ManufacturingPortal.dbo.OPC.WriteRequests' contains more than the maximum number of prefixes. The maximum is 3.
我已经尝试创建Server.DB.DBO的别名来缩短前缀的数量但是似乎实现了这个错误.
我无法在目标数据库上更改我的数据库架构.关于如何解决这个问题的任何建议?
谢谢
家伙
解决方法
正确的四部分表名是server.database.schema.tablename – 那里有一些多余的部分.
看起来表名是OPC.WriteRequests?如果是,那么你必须使用括号:sql05.ManufacturingPortal.dbo.[OPC.WriteRequests]
但也许你只是有一些名字不正确?