如果有A、B、C、D四个表,四个表各不相同,不过有一些字段相同,希望在每一个表上建立触发器,使在向四个表中的任意一个插入数据时,也向其他三个表插入数据;在四个表中的任意一个删除数据时,删除其他三个表相应的数据(原来一起插入的数据)。请问怎么搞?

解决方案 »

  1. 呵呵~ 最好是用存储过程吧.如果插入到A的,触发到B,然而估计B也会触发A,那么可能出现死循环.
      

  2. 同意存儲過程去處理或用一個觸發器去處理,多個觸發會使database負載過重,可能會死銷或死while...
      

  3. 如果你说的一个表,比如表A有触发器,而其它没有,那么不插入到A,插到B,那B怎么向A (C, D)插啊??同样的, 插到C ,那怎么触发从而插到A,B,D啊??问题是: 现在对于 FOR INSERT 来说,不是针对列的,是整条数据的.但方法不是没有,只是语句要多写几条,还要针对每个表的结构来写语句.
      

  4. 你用一个ID不就行了吗???都说了,最好是用存储过程来处理最好, 一个参数是 ID, 就行了!
      

  5. 忘记说,显示的时候 join 那个含有实体内容的表就行了.其它的也可建VIEW,也可以写在程序里面.
      

  6. 如果每一个表的ID都是自增长的,多个表能否共用一个ID?
      

类似问题 »