use master 
go 
--以后不再使用时删除链接服务器 
exec sp_dropserver  'CPQ', 'droplogins' --添加远程服务器连接连接 
exec sp_addlinkedserver  'CPQ', ' ', 'SQLOLEDB', 'CPQ' 
go 
--添加远程服务器信任 
exec sp_addlinkedsrvlogin  'CPQ', 'false',null, 'sa', '' 
go 
SELECT * FROM CPQ.BIMS.DBO.COMPANY WHERE CODE LIKE 'Y0103%' 
--以上语执行都没有错误 
=========================================================
--但执行以下信息时,就报错误 
alter table  CPQ.BIMS.DBO.COMPANY  disable trigger all
=======================================================  
服务器: 消息 117,级别 15,状态 1,行 1
对象 名称 CPQ.BIMS.DBO.' 包含的前缀数目超过了最大值。最大值为 2。
服务器: 消息 117,级别 15,状态 1,行 2
对象 名称 CPQ.BIMS.DBO.' 包含的前缀数目超过了最大值。最大值为 2。

解决方案 »

  1.   

    如果是我可能会这么做.
    1.连接好远程服务器.
    2.删除触发器.
    3.数据操作完毕后,再重新建立触发器.有关触发器内容的获取可参考如下:
    SqlServer数据库字典--主键.外键.约束.视图.函数.存储过程.触发器.sqlSELECT DISTINCT TOP 100 PERCENT o.xtype, CASE o.xtype WHEN 'X' THEN '扩展存储过程' WHEN 'TR' THEN '触发器' WHEN 'PK' THEN '主键' WHEN 'F' THEN '外键' WHEN 'C' THEN '约束' WHEN 'V' THEN '视图' WHEN 'FN' THEN '函数-标量' WHEN 'IF' THEN '函数-内嵌' WHEN 'TF' THEN '函数-表值' ELSE '存储过程' END AS 类型, o.name AS 对象名, o.crdate AS 创建时间, o.refdate AS 更改时间, c.text AS 声明语句 FROM dbo.sysobjects o LEFT OUTER JOIN dbo.syscomments c ON o.id = c.id WHERE (o.xtype IN ('X', 'TR', 'C', 'V', 'F', 'IF', 'TF', 'FN', 'P', 'PK')) AND (OBJECTPROPERTY(o.id, N'IsMSShipped') = 0) ORDER BY CASE o.xtype WHEN 'X' THEN '扩展存储过程' WHEN 'TR' THEN '触发器' WHEN 'PK' THEN '主键' WHEN 'F' THEN '外键' WHEN 'C' THEN '约束' WHEN 'V' THEN '视图' WHEN 'FN' THEN '函数-标量' WHEN 'IF' THEN '函数-内嵌' WHEN 'TF' THEN '函数-表值' ELSE '存储过程' END DESC
      

  2.   

    ALTER TABLE table 
    { [ ALTER COLUMN column_name 
        { new_data_type [ ( precision [ , scale ] ) ]
            [ COLLATE < collation_name > ]
            [ NULL | NOT NULL ]
            | {ADD | DROP } ROWGUIDCOL }
        ] 
        | ADD
            { [ < column_definition > ]
            | column_name AS computed_column_expression
            } [ ,...n ]
        | [ WITH CHECK | WITH NOCHECK ] ADD
            { < table_constraint > } [ ,...n ] 
        | DROP
            { [ CONSTRAINT ] constraint_name 
                | COLUMN column } [ ,...n ] 
        | { CHECK | NOCHECK } CONSTRAINT
            { ALL | constraint_name [ ,...n ] }
        | { ENABLE | DISABLE } TRIGGER
            { ALL
      

  3.   

    一楼的兄弟:
    如果是我可能会这么做. 
    1.连接好远程服务器. 
    2.删除触发器. ===>删除远程SQL服务器上的表的触发器
    3.数据操作完毕后,再重新建立触发器. ===>建立远程SQL服务器上的表的触发器
    问题搞复杂化了;
    谢谢