【问题标题】:TRIGGER CREATION USING LINKED SERVER TABLE ON MS SQL在 MS SQL 上使用链接服务器表创建触发器
【发布时间】:2017-07-18 14:18:57
【问题描述】:

我正在尝试使用链接数据库到我的 Oracle 数据库来创建触发器。如果我使用 select 语句,它可以正常工作,这意味着我的链接服务器工作正常,但是当我尝试使用它创建触发器时,我收到此错误:

对象名称“TESTS..TESTSMS.YELL_CAT”包含的内容多于 最大前缀数。最大值为 2。

在下面查看我的查询。

CREATE TRIGGER Insert_Into_TempYellCat ON TESTS..TESTSMS.YELL_CAT 
after INSERT AS
BEGIN

    INSERT INTO 
    TempYellCat
    (
        TRA_DATE,
        TRA_SEQ1,
        TRA_SEQ2
    )
    SELECT 
        TRA_DATE, 
        TRA_SEQ1, 
        TRA_SEQ2
    FROM 
        TESTS..TESTSMS.YELL_CAT 
END

我需要有人帮忙。

【问题讨论】:

  • 提示:大写被认为是尖叫。你现在想编辑你的问题标题!
  • 您不能在远程数据库上创建 (SQL Server) 触发器 - 绝对不能在运行不同的数据库产品时创建。

标签: sql-server database oracle plsql triggers


【解决方案1】:

这是一个骗人的问题。这是 2 年前关于 SO 的解决方案。

The object name contains more than the maximum number of prefixes. The maximum is 3

用方括号指定您的架构名称 SQL05.ManufacturingPortal.dbo.[OPC.WriteRequests] 和对象名称

【讨论】:

  • 这不是不可能的答案。充其量这将是一个受骗的VTC。但是,它也严重误解了这个问题。
猜你喜欢
  • 2017-01-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-07-19
  • 2022-06-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多