存储过程中能执行create table命令吗?

[复制链接]
查看11 | 回复7 | 2006-5-8 09:05:38 | 显示全部楼层 |阅读模式
create or replace procedure aaa
as
begin
create table mm(a int,b varchar(10));
end;
编译不通过,大家帮忙给看看。


回复

使用道具 举报

千问 | 2006-5-8 09:05:38 | 显示全部楼层
用动态SQL,
execute immediate 'create table ... ';
回复

使用道具 举报

千问 | 2006-5-8 09:05:38 | 显示全部楼层
还要看你的角色有没有被分配 create table 权限; 我也遇到过使用dba 建表权限在存储过程中不认可。 需要直接赋建表权限给你用的用户。
回复

使用道具 举报

千问 | 2006-5-8 09:05:38 | 显示全部楼层
可以,用execute immediate 'sql语句';
注意,''中的sql语句没有;号
回复

使用道具 举报

千问 | 2006-5-8 09:05:38 | 显示全部楼层
谢谢楼上各位,已经解决了
回复

使用道具 举报

千问 | 2006-5-8 09:05:38 | 显示全部楼层
最初由 waterdad 发布
[B]谢谢楼上各位,已经解决了 [/B]

解决了也要回复个你解决问题的方法的吧
回复

使用道具 举报

千问 | 2006-5-8 09:05:38 | 显示全部楼层
方法??
回复

使用道具 举报

千问 | 2006-5-8 09:05:38 | 显示全部楼层
最初由 huak 发布
[B]
解决了也要回复个你解决问题的方法的吧 [/B]


支持,希望楼主给出解决的方法予大家参考啊.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行