我有两张表A、B,结构一样,字段都是200多个,我想将A中的一条记录更新为B中跟它主键一样的那条记录,
有什么简便方法吗?我不需要那种将字段全部都列出来的方法啊,
也不是太想将记录先删除,再insert的那种方法,
兄弟姐妹们大家帮忙一起看看,小弟在此先谢谢了
有什么简便方法吗?我不需要那种将字段全部都列出来的方法啊,
也不是太想将记录先删除,再insert的那种方法,
兄弟姐妹们大家帮忙一起看看,小弟在此先谢谢了
其实我说的那两种方法我也不太确定它们的效率哪个更好,由于主键的值是可以事先知道的,我想直接update的效率应该也不低,我的Oracle也就一般吧,想让大家也帮我想想,
B中没有触发器吗?B更新或插入了,A也跟着更新。
如果按照你说的,只更新那些改变了的字段,那么你又怎么判断哪些字段是改变了的?
那这样说是不是要过滤一遍,找到那些更新字段,这不是多此一举吗?还不如直接delete,insert来的快。
建议 现将触发器禁了 alter trigger tri_name disable;
直接删掉 在
insert into a select * from b;然后在启用触发器
alter trigger tri_name enable;