我有这样一个表,里面有一个字段msg,里面是有关于销售及其中促销的信息,不同的信息之间,用"|"隔开,就像这样"20070401|Seord102344|01112|3|E0002|180|500",这个例子中,数据的格式是"日期|销售单据号|产品编号|促销编号|单价|总金额".
请问,怎样在oracle里面设置触发器,把这些信息分开,再写入另外的表中?
请问,怎样在oracle里面设置触发器,把这些信息分开,再写入另外的表中?
解决方案 »
- 关于ID自增长的问题
- HP-UX中应用程序无法启动oracle 10g
- 急快!Oracle俩个表合并 用存储过程 视图等
- 怎样调用在oracle客户端写的函数????
- plsql里面如何用命令查看 当前用户以及表所在的表空间?
- 为什么我不能在刚装的ORACLE中建表呢~!?
- 报‘动态链接库c:\winnt\system32\user32.dll初始化失败,进程非正常终止’错?sos!小妹急等!
- 紧急求助,oracle9i的连接问题,在线等
- 连接oracle9i库的问题
- 难道没有高手了??????????
- oracle中windows底下用客户端连接linux下的服务器端创建索引的问题
- 在DELPHI+ORACLE开发中 遇到的奇怪问题
after Insert on a
for each row
begin
declare
s1 varchar2(100);
s2 varchar2(100);
s3 varchar2(100);
s4 varchar2(100);
s5 varchar2(100);
s6 varchar2(100);
s7 varchar2(100);
i int;
S VARCHAR2(1000);
begin
end;
if inserting then
s:=:new.msg;
i:=Instr( s,'|' );
s1:=substr(s,1,i-1);
s:=substr(s,i+1,length(s)-i);
i:=InStr( s,'|');
s2:=substr(s,1,i-1);
s:=substr(s,i+1,length(s)-i);
i:=InStr( s,'|');
s3:=substr(s,1,i-1);
s:=substr(s,i+1,length(s)-i);
i:=InStr( s,'|');
s4:=substr(s,1,i-1);
s:=substr(s,i+1,length(s)-i);
i:=InStr( s,'|');
s5:=substr(s,1,i-1);
s:=substr(s,i+1,length(s)-i);
i:=InStr( s,'|');
s6:=substr(s,1,i-1);
s7:=substr(s,i+1,length(s)-i);
insert into tableb select s1,s2,s3,s4,s5,s6,s7 from dual;
end if;
end;
end;
不错 不错