解决方案 »
- 求select写法 oracle 11g(PLSQL)
- oracle竖表转横表
- 现在(+)连接符现在用得还多吗?
- java如何调用存储过程,然后遍历结果??
- /bdump/*.trc 问题
- 如何删除数据库(我使用向导建立了一个数据库 name ,如何删除它)
- 这几天急疯了!!!血本求解
- 请问如何删掉sys用户表的列
- 如何在oracle8i中实现A、B两表的多字段关联对A表删除某些字段内容重复的记录??
- 我的oracle里没有pro*c
- Error while registering Oracle JDBC Diagnosability MBean.
- [求助]ORACLE 触发器 ORA-04098 无效且未通过重新验证
两个表的机构不是完全一致
需要将字段都列出来
insert into tablea(c1,c2,c3,c4……)
select c1,c2,c3,c4……
from tableb
where ……
我不知道该怎么说我这个低级错误。
非常感谢,编译通过了。
并且触发器工作了。
但是写入系统当前时间并没有生效。insert into YTO_ORDERDETAIL_HISTORY_TABLE select * from YTO_ORDERDETAIL_TABLE where ***
你这往历史表插入的数据是从YTO_ORDERDETAIL_TABLE这个表取的,没有用到current_timestamp 这个啊
btw,我也没怎么用过触发器哈,而且我们开发木有建触发器的权限,不能测试,猜你可以把字段展开,把这个字段单独写一下
代码如下:
create or replace trigger TRG_YTO_ORDERDETAIL_TABLE_ROW
before insert on YTO_ORDERDETAIL_TABLE
for each row
begin
:new.import_time:=current_timestamp;
insert into YTO_ORDERDETAIL_HISTORY_TABLE(PRODUCTNO,PARTID,PARTNO,SUPPLIERNO,ORG,IMPORT_TIME) select PRODUCTNO,PARTID,PARTNO,SUPPLIERNO,ORG,IMPORT_TIME from YTO_ORDERDETAIL_TABLE where PRODUCTNO=:new.PRODUCTNO ;
delete from YTO_ORDERDETAIL_TABLE where PRODUCTNO=:new.PRODUCTNO ;
end TRG_YTO_ORDERDETAIL_TABLE_ROW;
谢谢lizzie贝儿的帮助!