Sql server SQL Server赢了';t在我可以查询的表上创建触发器

Sql server SQL Server赢了';t在我可以查询的表上创建触发器,sql-server,triggers,Sql Server,Triggers,命令: select * from dbo.hmg_cahplots 返回9250行。但是,当我尝试创建触发器时,它会失败: Msg 8197,16级,状态6,程序LOTDUPDATETRIGGER\U tdp,第1行 对象“dbo.hmg_cahplots”不存在或对此无效 手术 触发代码为: CREATE TRIGGER dbo.LotUpdateTrigger_tdp ON dbo.hmg_cahplots FOR UPDATE, INSERT AS BEGIN update

命令:

select * from dbo.hmg_cahplots
返回9250行。但是,当我尝试创建触发器时,它会失败:

Msg 8197,16级,状态6,程序LOTDUPDATETRIGGER\U tdp,第1行 对象“dbo.hmg_cahplots”不存在或对此无效 手术

触发代码为:

CREATE TRIGGER dbo.LotUpdateTrigger_tdp ON dbo.hmg_cahplots FOR UPDATE, INSERT 
AS
BEGIN
    update lot
    set lot.hmg_planmodelname = model.hmg_modelname, lot.hmg_thermslotincentive = model.hmg_thermsincentive,
        lot.hmg_thermslotincentive_base = model.hmg_thermsincentive_base, lot.hmg_kwlotincentive = model.hmg_kwincentive
    from hmg_cahplots as lot inner join i
            on lot.hmg_cahplotsid = i.hmg_cahplotsid
         inner join hmg_pgecahp as proj 
            on proj.hmg_pgecahpid = lot.hmg_pgecahplots
         left outer join hmg_pgecahpmodels as model 
            on model.hmg_pgecahpmodelsid = lot.hmg_cahpplanstolotsid
            and model.hmg_pgecahpplansid = lot.hmg_pgecahplots         
END
我怀疑这很难解决。我假设我需要指定一个名称空间或其他东西。然而,我对SQL Server还不熟悉,我不知道如何开始

谢谢,蒂姆

  • 您确定您位于正确的数据库中,而不是主数据库中吗
  • 你确定你的权限正常吗
  • 你确定这是一张桌子,不是一个视图吗
  • 您确定您位于正确的数据库中,而不是主数据库中吗
  • 你确定你的权限正常吗
  • 你确定这是一张桌子,不是一个视图吗

  • 如果您确定此表存在并且试图在同一数据库中创建触发器,则从
    中删除
    之前和
    之后的coma。lot.hmg\u kwlotincentive=model.hmg\u kwentive,

    如果您确定此表存在并且试图在同一数据库中创建触发器,然后在
    之前和
    lot.hmg_Klotincentive=model.hmg_Krotinentive之后移除昏迷,

    我让我们的管理员检查#2。我正在使用MS SQL Server Management Studio Express。我将检查文档,并尝试找出如何知道我是否在正确的数据库中,而不是主数据库中。是否有一个模式表可以查询,以查看这是一个表还是一个视图?好的……看起来我正在尝试对一个视图设置触发器。我得到的DB图是错误的…这就解释了这个谜。谢谢你帮我整理。我让我们的管理员检查一下。我正在使用MS SQL Server Management Studio Express。我将检查文档,并尝试找出如何知道我是否在正确的数据库中,而不是主数据库中。是否有一个模式表可以查询,以查看这是一个表还是一个视图?好的……看起来我正在尝试对一个视图设置触发器。我得到的DB图是错误的…这就解释了这个谜。谢谢你帮我整理。