oracle执行多条语句

需要同时执行多条语句:createtable和insertintotableselectfrom…。但是pl/sqldeveloper9.0下单个语句执行都没问题,两句放... 需要同时执行多条语句: create table 和insert into table select from…。但是pl/sql developer 9.0 下单个语句执行都没问题,两句放一块就不行,尝试了直接分号隔开、begin end。
即使最简单的两个create 也不行。
如 create table a(id number(1)); create table b(id number(1)); ORA-00911: 无效字符

begin
create table a(id number(1));
create table b(id number(1));
end;
则一直换行换行,没反应。
展开
 我来答
太平岁年丰9
2014-04-15 · TA获得超过1231个赞
知道小有建树答主
回答量:1017
采纳率:100%
帮助的人:1095万
展开全部
你是在sql window里执行的多条语句,应该换成command windows
新建一个command window ,把所有语句粘贴进去,就可以执行多条语句了
更多追问追答
追问

我是在命令窗口执行的。

追答
加个 /  就执行了
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
17号观察室
2014-04-15 · TA获得超过5730个赞
知道大有可为答主
回答量:3666
采纳率:66%
帮助的人:1377万
展开全部
create table a(id number(1));
create table b(id number(1));
就这样就可以,不要写在同一行,即使有分号也不行,也没有必要用begin……end
追问
谢谢,但是一楼回答的最快,也解决了我的问题
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
天雨青辰
2014-04-15 · TA获得超过169个赞
知道答主
回答量:160
采纳率:100%
帮助的人:120万
展开全部

使用直接的DDL语句,存储过程是不能编译通过的。可以使用折中方法:

begin
execute immediate 'create table a(id number(1))';
execute immediate 'create table b(id number(1))';
end;
/
 
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhenxin0603
推荐于2018-05-17 · TA获得超过600个赞
知道小有建树答主
回答量:600
采纳率:100%
帮助的人:454万
展开全部
create table a(id number(1));
/
create table b(id number(1));
/
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式