我在SQL2000后台创建一个触发器,我在DELPHI前台中修改数据时,再按保存,后来发生异常说什么“键列信息不足,……”,但我把后台数据库的记录只保存一条时,就可以,超过一条就不行。!!可是我不DELPHI中运行,直接在后台SQL中随便操作都没有问题!
这么样解决这个问题!!!!!!

解决方案 »

  1.   

    CREATE TRIGGER TrGroupdept_update ON groupdept
    FOR  UPDATE
    AS
    declare @groupname varchar(30);
     select @groupname=groupname  from  inserted;
    update dormdetail set groupname=@groupname ;
    不知上面有什么问题
      

  2.   

    触发器与delphi程序又冲突。我也遇到过,修改触发器触发的条件。
      

  3.   

    TO  timelyraining(恨天)
    怎么修改???
      

  4.   

    TO songzhiwei(song) 
    不但加了ID,而且还设了主键都没用!!
      

  5.   

    CREATE TRIGGER TrGroupdept_update ON groupdept
    FOR  UPDATE
    AS
    declare @groupname varchar(30);
    declare @groupname1 varchar(30);
     select @groupname=groupname  from  inserted;
     select @groupname1=groupname  from  deleted;
    if @groupname1<>@groupname
    update dormdetail set groupname=@groupname ;
      

  6.   

    TO timelyraining(恨天) 
    还是不行呀
      

  7.   

    to xiangyun123(翔云) 
    错误可能处在Client代码处
    贴出部分代码吧
      

  8.   

    没什么代码,就是这个表修改保存,来触发另外一个表的记录,就发生异常,代码就两行
    nDateDesignT.Edit;
    nDateDesignT.post;
      

  9.   

    呵呵groupdept没问题我想你要设置的是dormdetail的INDEX,或在DORMADETAIL中加入一个序号之类的字段