sqlplus sql执行存储过程(sql如何执行oracle存储过程)

seosqwseo3个月前 (06-24)测评日记23

一、Oracle批量导出存储过程(保持每个存储过程独立)

略微复杂,需要存储过程实现。

1、创建输出路径,比如你要在d盘test目录下输出,你就先在d盘根目录下建立一个test的目录。

2、sqlplus下以sysdba登录,执行以下语句

createorreplacedirectoryTMPas'd:\test';

grantread,writeondirectoryTMPtoscott;--比如我用的scott用户

altersystemsetutl_file_dir='d:\test'scope=spfile;

3、以上步骤执行完,需要重启数据库。

4、创建一个存储过程,代码如下(基本是不用改动,原封**即可):

CREATEORREPLACEPROCEDURESP_OUTPUT_PROCEDUREis

file_handleutl_file.file_type;

Write_contentVARCHAR2(1024);

Write_file_nameVARCHAR2(50);

v_namevarchar2(50);

v_textvarchar2(2000);

cursorcur_procedure_nameis

selectdistinctnamefromuser_sourcewheretype='PROCEDURE';

cursorcur_sp_outis

selectt.text

from(select0line,'CREATEORREPLACE'text

fromdual

union

selectline,text

fromuser_source

wheretype='PROCEDURE'

andname=v_name)t

orderbyline;

begin

opencur_procedure_name;

loop

fetchcur_procedure_name

intov_name;

exitwhencur_procedure_name%notfound;

write_file_name:=v_name||'.txt';

opencur_sp_out;

loop

fetchcur_sp_out

intov_text;

exitwhencur_sp_out%notfound;

file_handle:=utl_file.fopen('TMP',write_file_name,'a');

write_content:=v_text;

--writefile

IFutl_file.is_open(file_handle)THEN

utl_file.put_line(file_handle,write_content);

ENDIF;

--closefile

utl_file.fclose(file_handle);

endloop;

closecur_sp_out;

endloop;

closecur_procedure_name;

end;

5、创建完毕执行存储过程,这个就不赘述了,执行完毕后,你会发现d盘test目录下的文件名就是以存储过程名命名的txt文件,如图:

6、里边内容(就是存储过程创建时的代码,可能排版看着难看点,但是不影响使用):

二、PL***sql如何执行oracle存储过程

要成功执行这个存储过程,你需要注意几点:

1.select* from ods_area;不能直接在pl/sql中作为语句执行。

应该用 select字段 into plsql变量 from表名;

的形式来获取表中的数据,保存到plsql变量中。

2.存储过程的语法格式为:

create or replace procedure area

is

--变量声明;

begin

--过程主体;

end area;

3.如果存储过程代码无误,可以通过"/"来执行代码,编译存储过程。

4.通过exec或 execute来调用编译后的存储过程。

例如:

--创建procedure:

create or replace procedure area

is

num number;

v_areaRecord dual%ROWTYPE;

begin

--例子1

select* into v_areaRecord from dual;

--例子2

select 12345 into num from dual;

end area;

/

--通过/执行;

--调用

exec area;

三、sqlplus多行代码怎么

sqlplus多行代码怎么如何在sqlplus命令窗口执行脚本及多条命令_阿柠xn-CSDN博客_sqlplus多行

SQL*PLUS使用教程版本:Re le ase 11.2.0.2.0登录的方式*sqlplus US ER/PASSWORD*sqlplus回车,然后根据提示输入用户名与密码,此时密码不会显示出来查看当前用户的所有表名*se le ct*from...

CSDN技术社区2020-04-01

sqlplus如何将一条记录分多行显示,每字段一行?百度知道

回答:5

如果要其他效果,也可以用spool把结果写到文本文件里,然后编辑到所需要的样式!

百度知道2020-05-10

在Oracle中使用sqlplus插入多行字符串-编程之家

这在Toad中运行正常,但是当我将其保存为.sql文件并使用 sql plus运行时,它会将每行视为单独的查询,这意味着每一行都将失败(beacuse insert into table(id,string)values(1,“Line1...

编程之家2020-07-25

其他人还搜了

sqlplus生成代码

sqlplus修改代码

sqlplus打代码

sqlplus源代码

sqlplus代码

sqlplus代码权限不足

sqlplus查看view源代码

sqlplus返回错误代码

初用Oracel求救,怎样在SQL*Plus中批执行多个SQL语句.-CSDN社区

评论:10

简单的方法就是写在一个文件中,以×.sql文件名保存之,然后在sqlplus或PL/SQL DEVELOPER的SQL>@×.sql但如果语句很多的话,不建议使用该方法,这样效率太低,也很耗数据库资源!谢谢各位...

CSDN技术社区

sqlplus执行多个sql文件-芝士回答

1.在SQL*Plus中执行单个sql脚本文件: SQL>@c:\aaa.sql 2.在SQL*Plus中执行多个sql脚本文件:比如你要执行得2个sql脚本 a.sql和 b.sql现在你重新写一个脚本 c.sql其中得内容如下@@a.sql@@b.sql然后把c.sql放在a.sql和 b.sql得同一个目录中即可,然后在sqlplus下执行:SQL>@c.sql就可以了.当然有具体路径的加上路径即可,如下: SQL>@E:\c.sql注意事项...

芝士回答2021-03-27

mybatis-plus实现自定义SQL、多表查询、多表分页查询_Eric-x的博客-CSDN博客_mybatisplus自定义查询

plus中也是一样可以使用的,咱们直接上代码文章目录前言1、自定义SQL2、多表查询3、多表分页查询4、多表分页条件查询1、自定义SQL在mapper中自定义一个方法即可@Repositorypublic interface...

CSDN技术社区2022-11-09

怎么注释多行代码_芝士回答

在C++中,使用注释有两种方法,一、单行注释,使用英文状态下的输入法输入两斜杠即可(注意是从上到下从右边斜向左边,/(点号附近)二、多行注释,使用英文状态下的输入法输入在注释首部使用右...

芝士回答2022-03-04

mybatisplus一次性执行多条SQL语句插入(Oracle篇)gblfy的博客-CSDN博客_mybatis执行多条sql oracle

二、代码部分 2.1.controller package com.gblfy.modular.order.controller;import com.gblfy.modular.order.mapper.MysqlMoreInsertMapper;import...

CSDN技术社区2021-08-19

一条sql多个执行计划怎么处理_芝士回答

第一步:登入sql/plus执行命令(无先后顺序) set time on;(说明:打开时间显示) set autotrace on;(说明:打开自动分析统计,并显示SQL语句的运行结果) set autotrace traceonly;(说明:...

芝士回答2021-04-08

【已解决】批处理如何连续执行多个SQLPLUS命令-BAT求助&讨论-批处理之家批处理_BAT脚本_PowerShell_VBS_CMD_DOS_Perl_Python-Powered by...

代码如下: SQLPLUS user1/passwor1@sql SQLPLUS user2/passwor2@sql SQLPLUS user3/passwor3@sql执行的过程中,执行完第一条之后,控制台停在SQLPLUS必须手动输入EXIT,才能继续执行第二条。...

批处理之家

相关搜索

sqlplus普通用户怎么登录

怎么用sqlplus命令查看

sqlplus怎么登录oracle数据库

shell获取sqlplus退出代码

换行代码

sqlplus怎么调用存储过程

上古卷轴潜行代码

c注释代码多行

2018炫舞手游伴侣誓言还行代码

shell捕获sqlplus退出代码

相关文章

亚美嘉擦镜纸测评分享

亚美嘉擦镜纸测评分享

很多小伙伴在关注亚美嘉擦镜纸怎么样?质量好不好?使用测评如何?本文综合已购用户的客观使用分享和相应的优惠信息,为大家推荐一款高性价比的产品,一起来看看吧。...

绿联USB/Type-C读卡器3.0高速好不好用

绿联USB/Type-C读卡器3.0高速好不好用

很多小伙伴在关注绿联USB/Type-C读卡器3.0高速怎么样?质量好不好?使用测评如何?本文综合已购用户的客观使用分享和相应的优惠信息,为大家推荐一款高性价比的产品,一起...

小米积木质量好不好

小米积木质量好不好

很多小伙伴在关注小米积木怎么样?质量好不好?使用测评如何?本文综合已购用户的客观使用分享和相应的优惠信息,为大家推荐一款高性价比的产品,一起来看看吧。...

MAXCAM适用dji大疆灵眸OSMOPOCKET怎么样

MAXCAM适用dji大疆灵眸OSMOPOCKET怎么样

很多小伙伴在关注MAXCAM适用dji大疆灵眸OSMOPOCKET怎么样?质量好不好?使用测评如何?本文综合已购用户的客观使用分享和相应的优惠信息,为大家推荐一款高性价比的...

ulanzi优篮子VL49怎么样?质量测评好不好用?

ulanzi优篮子VL49怎么样?质量测评好不好用?

很多小伙伴在关注ulanzi优篮子VL49怎么样?质量好不好?使用测评如何?本文综合已购用户的客观使用分享和相应的优惠信息,为大家推荐一款高性价比的产品,一起来看看吧。...

掌阅iReaderOcean3好不好

掌阅iReaderOcean3好不好

很多小伙伴在关注掌阅iReaderOcean3怎么样?质量好不好?使用测评如何?本文综合已购用户的客观使用分享和相应的优惠信息,为大家推荐一款高性价比的产品,一起来看看吧。...