plsql developer 里怎么写存储过程,和执行存储过程,怎么查看存储过程和出现什么情况算成功执行存储过程
我的plsqldeveloper是英文版的请尽量说详细点createorreplaceprocedurequery_BOOK(nameOUTNUMBER,MY_BOOKO...
我的plsql developer 是英文版的 请尽量说详细点
create or replace procedure query_BOOK(name OUT NUMBER,MY_BOOK OUT VARCHAR2,MY_BOOK2 OUT VARCHAR2) is
begin
select 编号 INTO name,书名 INTO MY_BOOK,价格 INTO MY_BOOK2 from BOOK where 编号=name;
end query_BOOK;
请帮看看这个对么 展开
create or replace procedure query_BOOK(name OUT NUMBER,MY_BOOK OUT VARCHAR2,MY_BOOK2 OUT VARCHAR2) is
begin
select 编号 INTO name,书名 INTO MY_BOOK,价格 INTO MY_BOOK2 from BOOK where 编号=name;
end query_BOOK;
请帮看看这个对么 展开
1个回答
展开全部
--建立测试数据:
create table BOOK(编号 number(10),书名 varchar2(20),价格 varchar2(20))
insert into BOOK values(100,'aa','88.77')
select * from BOOK
--建立存储过程:
create or replace procedure query_BOOK(name IN OUT NUMBER,MY_BOOK OUT VARCHAR2,MY_BOOK2 OUT VARCHAR2) is
begin
select 编号 ,书名,价格 INTO name,MY_BOOK,MY_BOOK2 from BOOK where 编号=name;
end query_BOOK;
--调用存储过程:
declare v_name number(10);
v_my_book varchar2(50);
v_my_book2 varchar2(20);
begin
v_name := 100;
query_BOOK(v_name,v_my_book,v_my_book2); --调用存储过程
dbms_output.put_line('v_name is: '||v_name);
dbms_output.put_line('v_my_book is: '||v_my_book);
dbms_output.put_line('v_my_book2 is: '||v_my_book2);
exception
when others then
dbms_output.put_line(sqlerrm);
end;
ps:
plsql developer -->File-->new--->SQL window-->然后就可以在弹出的空白窗口里写了.
存储过程写完后,是否有错,可以看plsql developer 的左边列表:
选"My objects"-->procedures-->展开-->看你对应的存储过程,如果存储过程前面有红色交叉,则表示存储过程有错.
create table BOOK(编号 number(10),书名 varchar2(20),价格 varchar2(20))
insert into BOOK values(100,'aa','88.77')
select * from BOOK
--建立存储过程:
create or replace procedure query_BOOK(name IN OUT NUMBER,MY_BOOK OUT VARCHAR2,MY_BOOK2 OUT VARCHAR2) is
begin
select 编号 ,书名,价格 INTO name,MY_BOOK,MY_BOOK2 from BOOK where 编号=name;
end query_BOOK;
--调用存储过程:
declare v_name number(10);
v_my_book varchar2(50);
v_my_book2 varchar2(20);
begin
v_name := 100;
query_BOOK(v_name,v_my_book,v_my_book2); --调用存储过程
dbms_output.put_line('v_name is: '||v_name);
dbms_output.put_line('v_my_book is: '||v_my_book);
dbms_output.put_line('v_my_book2 is: '||v_my_book2);
exception
when others then
dbms_output.put_line(sqlerrm);
end;
ps:
plsql developer -->File-->new--->SQL window-->然后就可以在弹出的空白窗口里写了.
存储过程写完后,是否有错,可以看plsql developer 的左边列表:
选"My objects"-->procedures-->展开-->看你对应的存储过程,如果存储过程前面有红色交叉,则表示存储过程有错.
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询