在命令行中如何创建存储过程

robyjeffding 2009-12-01 10:33:38
这是我在命令行中写的代码;

create or replace procedure insertPerson(pname in varchar2,page in number) as
begin
insert into persons values (person_seq.nextVal,pname,page);
end insertPerson;

代码没问题,但就是执行不了,怎么回事?我需要要在dos窗口执行,不是在PL*SQL上执行的。
请问各位大侠该如何处理?
...全文
421 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
robyjeffding 2009-12-05
  • 打赏
  • 举报
回复
这个问题解决了,我犯了一个低级错误,在命令结束时,未加“/”符号执行。谢谢各位了!
ojuju10 2009-12-01
  • 打赏
  • 举报
回复
dos命令行也是用sql plus登录,才可以执行的
Dave 2009-12-01
  • 打赏
  • 举报
回复



SQL> create or replace procedure insertPerson(pname in varchar2,page in number)
as
2 begin
3 insert into persons values (person_seq.nextVal,pname,page);
4 end insertPerson;
5 /

警告: 创建的过程带有编译错误。

SQL>


注意第五行的/



------------------------------------------------------------------------------
Blog: http://blog.csdn.net/tianlesoftware
网上资源: http://tianlesoftware.download.csdn.net
相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx
Q Q 群:62697716
iqlife 2009-12-01
  • 打赏
  • 举报
回复
在dos窗口执行,不是在PL*SQL上执行的
都一样的操作啊
C:\Documents and Settings\Administrator>sqlplus

SQL*Plus: Release 9.2.0.1.0 - Production on 星期二 12月 1 10:38:51 2009

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

请输入用户名: scott
请输入口令:
jiaruimin11 2009-12-01
  • 打赏
  • 举报
回复
按照5楼的做法,我在PLSQL中编译执行没有问题
duqiangcise 2009-12-01
  • 打赏
  • 举报
回复
1.先打开windows的doc窗口。
cmd
2.用你要执行过程的用户登录数据库。
sqlplus username/passwd@网络服务名称
3.编译过程,即把你过程的sql语句copy到命令行中,然后回车,并输入/,如下。
create or replace procedure insertPerson(pname in varchar2,page in number) as
begin
insert into persons values (person_seq.nextVal,pname,page);
end insertPerson;
/

4.然后执行过程。
begin
insertPerson(参数,参数);
end;
/
crazylaa 2009-12-01
  • 打赏
  • 举报
回复
存储过程、type、函数需要加 "/"表示执行。一般的select 、i/u/d就不要了。

17,140

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧