向各位高手请教一个问题 ORACLE存储过程建多个表的问题,执行完后只建成了一个表。。。

有个地方少了个空格,在你连接的时候字符串连接在一起了,oracle识别不出来,第二个vsql
vsql := 'create table '||'ODS_BUSI_CUSTOMER_0'||to_char(sysdate,'yyyymmdd')||
'as select * from sjck.ODS_BUSI_CUSTOMER_775@new_hnstat ';

'as select * from sjck.ODS_BUSI_CUSTOMER_775@new_hnstat ';
这行第一个引号前面加个空格
' as select * from sjck.ODS_BUSI_CUSTOMER_775@new_hnstat ';
就行了
那个commit 和rollback可以去掉,没有用,create是DDL语句,是自动提交的。

B表结构和A表一致
create table B as select * from A

或者你B表已经先建好了
insert into B (select * from A)

insert into B(字段1,字段2,...) (select 字段1,字段2,... from A)


确实存在空格的问题,但是两个建表的语句不管是对是错,格式是一样的

请教各位高手 oracle 存储过程 如何将获得捕获异常的内容写入一张表里~

可以先定义个变量,发生异常的时候将异常信息赋值给变量,插入表的时候用变量,
日志表没给表结构,我自己重新定义了一个,测试ok。
CREATE TABLE T_LOG_ERROR
(ERR_ID NUMBER,
ERR_TIME DATE,
ERR_CODE NUMBER,
ERR_INFOR VARCHAR2(4000)
);

create or replace procedure p_testone is
v number(2);
v_sqlcode number;
v_sqlerrm varchar2(4000);
begin
select 1 / 0 into v from dual;

--异常处理
EXCEPTION WHEN OTHERS THEN
ROLLBACK;
v_sqlcode :=sqlcode;
v_sqlerrm :=SUBSTR(sqlerrm, 1, 2000);
insert into t_log_error values(1,sysdate,v_sqlcode,v_sqlerrm);
commit;
DBMS_OUTPUT.PUT_LINE(SUBSTR(SQLERRM, 1, 200));
end;


执行存储过程后就可以把异常信息记录到表t_log_error了。

存储过程里有两个参数,而你调用的时候只有一个参数‘sql’

#13527077737# 向各位C语言高手请教一程序问题 - ******
#岳胀# 新出炉的已经测试通过了,好久没写C的语言了!#include "stdio.h"#include "string.h"main(){ char *s="adgda"; int len=strlen(s);char *p=s; //指向s头部char *q=s+len-1; //指向s尾部 int i=0; int flag=0; while(i<=len/2) { if(*p!=*q) flag=1; p++; q--;i++;}if(flag) printf("%s is not huiWen",s); else printf("%s is the huiWen",s);}

#13527077737# 向各位高手请教一个问题,发愁啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊. - ******
#岳胀# 在 时间区域按住鼠标左键不要放,推动鼠标往下拽,到底下后松开鼠标左键,即可.祝顺利!

#13527077737# 向高手请教一些电脑问题!请给予尽快解答!谢谢! - ******
#岳胀# 依次选择“开始→运行”,在“运行”对话框中输入“regsvr32 actxprxy.dll”命令,单击“确定”按钮,这时会弹出一个信息对话框,提示“actxprxy.dll中的DllRegister...

#13527077737# 向各位高手请教一个问题. ******
#岳胀# 当然有影响,起砂的主要原因是砂浆强度不足,水泥用量不足或者水泥质量问题都会造成起砂,这种情况就要把抹灰层铲除重做.还有一种情况就是强度够,但表面有局部水泥浆不足,这种起砂只要把砂扫掉就行.不会对涂料造成影响.

#13527077737# 再请教各位高手一个奥数问题,谢谢了!急急急 ******
#岳胀# 1*1*1*1……*1*1*2*1998=3996 1+1+1+1……+1+1+2+1998=3996 共1996个1,1个2,1个1998 有1998个学生,每人写一个自然数,使它们相加的和正好等于它们的积,将写出的1998个数从小到大排列,那么第100个数是(1),第1997个数是(2),最后一个数是(1998) 别忘记采纳回答哦~

#13527077737# 向各位高手请教一个问题.就是在PR中,导入了很多图片,但是图片的时间觉得都有些长,150张图片,怎么能一 - ******
#岳胀# 编辑—首选项—常规,打开后静帧图像默认持续时间,设置下数值即可,是按帧表示的,25帧/秒,要显示多长时间自己算下就行. 先在效果里选好效果,右键确认为默认过度效果.选中所有素材,选择序列—应用默认切换过度效果到所选择素材,这样就可以实现一次性给多个素材加过渡效果了.其实用绘声绘影来做,会更简单省力.

#13527077737# 有关Photoshop的问题,向各位高手请教一下,有图! - ******
#岳胀# 你只打开了一个文档,并且在文档中已经有了白色椭圆形副本图层.从图层面版移动图层到文档中的这个操作必须在不同文档间操作,因为你只打开一个文档,所以提醒你源文档和目标文档相同.如果你想移动文档中的复数图层,1,在图层面版中选择要移动的图层.2,请选用工具栏中的移动工具.3,在当前文档窗口内移动所选图层.

#13527077737# 请教各位高手.电脑问题如下: - ******
#岳胀# 可以用瑞星杀毒软件制作u盘杀毒工具,杀.重装系统后,别的盘一律不能点,先升级杀毒软件,杀病毒,因为别的盘也中毒了,尤其可能是autorun病毒,你一点,就白装系统了.建议用一键还原...

#13527077737# 向各位高手请教两个菜鸟问题??????????????? ******
#岳胀# 1 Locale Identifier=2052 你的数据库是本地的,这是该数据库对应的一个标识符2 assigned(frame2) 判断frame2是否已分配内存,若尚未分配则返回False

#13527077737# 向各位高手请教一点问题俺在玩暗黑破坏神v1.1(单机版)时,A? ******
#岳胀# 这是什么练法啊?最好从炼. 低级人物过这关的窍门是:开封印前先开个回程门.等封印开了,怪冲出来时,进门回城.在从火焰之河进来,把怪分散的引出去,一个一个的打死

为传递更多家电数码信息,若有事情请联系
数码大全网