使用SP-DBOPTION  ALLOW UPDATES
当启用 allow updates(设为 1),任何具有适当权限的用户都可以直接用特殊更新来更新系统表,或者创建可更新系统表的存储过程。

解决方案 »

  1.   

    任何数据库,我想用SQL指令总是能行的吧,
    Create trigger aaa for insert  as
      

  2.   

    直接create是不行的,提示拒绝dbo的create trigger权限。
    用sp_dboption,没有allow updates选项,我用sp_configue试过,给allow updates置为1,还是不行,只是可以修改系统表中数据,依然无法创建trigger.
      

  3.   

    Example :
    CREATE TRIGGER less_than_50_percent ON [dbo].[discounts] 
    FOR INSERT
    AS
    declare @discount_percent decimal(4, 2)
    select @discount_percent = (select discount from inserted)if @discount_percent >= 50
    begin
    raiserror ('discount has to be less than 50 percent', 16, 1)
    rollback tran
    end
      

  4.   

    exec sp_configure 'allow updates','1'RECONFIGURE WITH OVERRIDE运行之后再创建你要的触发器。
      

  5.   

    exec sp_configure 'allow updates','1'
    RECONFIGURE WITH OVERRIDE
    我在上面已经说过了,可以通过它来修改系统表中数据,但是无法创建触发器。请注意这里说的是我自己建的数据库中的系统表,而不是自己建的普通表。期待大家的回复,谢谢!