本帖最后由 banian_cn 于 2011-09-16 10:25:12 编辑

解决方案 »

  1.   


    create trigger tr_update_User on zj_User
    for update
    as
    set xact_abort on
    update a set UserPassword=i.UserPassword,UserEmail=i.UserEmail 
    from zhujishi_web.dbo.zj_User a,inserted i,deleted d 
    where i.[UserName]=d.[UserName] and i.[UserName]=a.[UserName]
    --改这样试下
      

  2.   

    update zhujishi_web.dbo.zj_User set UserPassword=i.UserPassword,UserEmail=i.UserEmail 
    from zj_User,inserted i,deleted d 
    -->
    update zhujishi_web.dbo.zj_User set UserPassword=i.UserPassword,UserEmail=i.UserEmail 
    from zhujishi_web.dbo.zj_User z,inserted i,deleted d 
      

  3.   

    http://blog.sina.com.cn/s/blog_73c058140100wvo3.html
      

  4.   

    论坛上用户更新信息,只可能是单条记录更新,因此,用不着同时调用inserted 表和 deleted 表.试试:
    create trigger tr_update_User on zj_User
    for update
    as
    set xact_abort on
    update t set UserPassword=i.UserPassword,UserEmail=i.UserEmail 
    from zhujishi_web.dbo.zj_User t inner join inserted d
    where t.[UserName]=d.[UserName]
      

  5.   

    我是用本地的vs 2010 用 查询器 测试操作的。用INSERT触发器测试能两个表互相更新没问题,
    用UPDATE却提示没权限操作,不知道为何,应该是触发器写的不对吧。
      

  6.   

    那应该就是权限问题了,你登陆的用户有insert权限没有update权限可能
    换个管理员用户登陆试试?
    触发器没问题了
      

  7.   

    权限问题错误信息: 服务器主体“zj_bbs”无法在当前安全上下文下访问数据库"zhujishi_web"。
      

  8.   

    谢谢各位热情回答,结贴了。是权限的问题~~ 悲剧的,我原来的 UPDATE触发器也没问题。
    我在本机用VS2010的查询器测试遇到这个问题~~
    我远程打开服务器直接用 服务器的数据库管理器测试正常!