create or replace procedure create_table is
c_sql varchar2(500);
begin
c_sql:='create table my_table(col1 varchar2(50))';
execute immediate c_sql;
end create_table;删除my_table只需将c_sql:='drop table my_table';
c_sql varchar2(500);
begin
c_sql:='create table my_table(col1 varchar2(50))';
execute immediate c_sql;
end create_table;删除my_table只需将c_sql:='drop table my_table';
解决方案 »
- 求救两台可以互相ping通的机器 一台机器无法登陆另一台机器的oracle
- 请教关于游标在动态语句中的使用问题
- row_number()的使用请教, 知道的都请进来指点指点
- 创建无大小限制的表空间
- 请高手赐教:关于oracle中 "On Delete Cascade(连带删除)"的问题?
- 在.NET下我用PLSQL Developer连接oracle数据库,以前好好的,但是打完系统补丁就连接不上了,但是用java程序就可以连接上,我的oracle9i的数
- 请问,如何在Oracle中选择前多少条记录阿?类似SQL Server中的select top 100 * from ....
- 创建完资料库后启动不了management server服务?出现错误997:重叠的I/O操作进行中,怎么办?
- 请教,同样的SQL,在proc程序和PL/SQL内查询的结果不一样。
- oracle 11g导入10g?
- 急,vb.net中怎么用oledb读取、存储blob字段;
- 关于集合de问题
用dbms_sql来实现
CREATE OR REPLACE PROCEDURE demo AS
cursor_name INTEGER;
rows_processed INTEGER;
BEGIN
cursor_name := dbms_sql.open_cursor;
DBMS_SQL.PARSE(cursor_name, 'create table my_table(col1 varchar2(50))',
dbms_sql.native);
dbms_sql.execute(cursor_name);
DBMS_SQL.close_cursor(cursor_name);
EXCEPTION
WHEN OTHERS THEN
DBMS_SQL.CLOSE_CURSOR(cursor_name);
END;
execute immediate sql;