如表名为:test请问,如何利用存储过程创建一个表?如何利用存储过程给一个表添加字段?如何创建视图?并返回创建成功,或创建失败的信息。如:返回 1,表示成功,返回0表示失败。
解决方案 »
- 求大神指点SQL语句。。。
- 求教一个关于联合查询的sql语句
- 一个Update语句求教
- 如何在xp系统中安装虚拟系统。急。。。急。。急。。。
- 使用telnet登录远程的windows版本Oracle 10g 在sqlplus使用edit命令为何无法调出notepad进行编辑?
- oracle有无什么工具,可以记录应用程序提交的sql语句,类似于sqlserver中的事件探测器?
- 简单问题
- 怎样把表中的一条记录的每个字段减去另一条记录,结果更新到原记录?
- 实在是莫名其妙,有请各位指教。
- oracle优化器是什么东东,我的机器上怎么找不到
- 高手帮忙?加分?
- 用orcaleclient 了解orcale8.17(字符集:AMERICA US7ASCII) 取出的数据为什么都是乱码,怎么解决啊
return number
is
begin
execute immediate 'create table testt(
id number(8),
name varchar2(10))';
return 1;
exception
when others then
return 0;
end;
/要返回值好像还只能写成函数呢.你可以执行SELECT crtb FROM DUAL;来看返回的是什么值.
create view view_name as
select ......
begin
execute immediate 'create table a(id number,name varchar2(10))';
end;
SQL> begin
2 execute immediate 'create table a(id number,name varchar2(10))';
3 end;
4 /PL/SQL 过程已成功完成。SQL> desc a
名称 是否为空? 类型
----------------------------------------- -------- ----------------------------
ID NUMBER
NAME VARCHAR2(10)
楼上的可以用
偶来晚了
如果更动态的需要使用 dbms_sql包
as
exp exception;
begin
execute immediate 'create table test(id number,name varchar(20))';
execute immediate 'insert into test(110,'test_name')';
raise exp;
exception
when exp then
dbms_output.put_line('执行成功1');
when others then
dbms_output.put_line('执行失败0');
end;