`
沙漠绿树
  • 浏览: 429651 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

PLSQL操作ORACLE服务器上的文件

阅读更多
引用
    在做oracle plsql 编程的时候,难免要对文件进行操作,如读取oracle服务器上的别的目录下的数据文件,导入到oracle库中;虽然在plsql developer工具中提供了debug功能,但当有输出时,debug的控制台不能及时看到,除非停止debug。如果在plsql程序中输出日志信息到文件中,使得plsql程序调试、运行跟中更加方便,因为大家都知道日志的作用是什么。

    下面讲讲怎么在oracle的plsql程序中写入日志到oracle服务器的文件中。虽然我们是用plsql developer开发和运行plsql程序,但是plsql developer经常是安装在远程计算机上,这里说的操作文件,是指plsql操作oracle dbms所在的服务器上,如果oracle安装在linux系统,则是操作linux上的文件;安装在windows上,则是操作windows上的文件,对于本次演示前者会相对麻烦些,后者容易些。因为我用的oracle安装在linux上,所以以linux系统为例讲解。注:“--” 表示注释行


一、建立存放日志文件的目录。

1.以root权限登录linux系统。

2.创建一个目录存放日志文件。

# mkdir /home/oracle/plog

3.进入/home/oracle/,赋予oracle用户对plog目录读写权限

# chown oracle plog

4.检验oracle用户是否对该目录有读写权限,切换到oracle用户下

# su oracle

$ cd plog

$ touck plsql.log        

-- 这里是创建一个文件的意思,如果没有权限,则创建失败并提示。
-- 如果创建成功,则说明权限授权成功,我们可以把plsql.log删除 $ rm plsql.log,这个随便。

二、介绍plsql程序中操作文件,oracle提供 utl_file 包是专门用来操作磁盘上的文件。

1.需要创建一个directory对象

SQL> create or replace directory plog_dir as '/home/oracle/plog';  

2.以sys用户登录plsql developer,给运行plsql的程序用户授权对该目录可写、可读的权限;对 utl_file 有可执行的权限。

SQL> grant read,write on directory plog_dir to scott;  

SQL> GRANT EXECUTE ON utl_file TO scott;

--scott是登录oracle数据库的一个用户。

3.编写一个写入日志的存储过程。

create or replace procedure logger
(
	v_file_name in varchar2,--存放日志文件名
	v_log_msg in varchar2--日志消息
)

is
	v_file_handle utl_file.file_type;--声明一个文件操作句柄	

begin
	
	v_file_handle:=utl_file.fopen('PLOG_DIR',v_file_name,'a'); --实例化一个句柄 
	utl_file.put_line(v_file_handle,v_log_msg);--写入信息
	utl_file.fflush(v_file_handle);--把缓冲区的信息写入文件
	utl_file.fclose(v_file_handle);	--关闭文件句柄

exception
	when others then 
		dbms_output.put_line('插入日志异常,错误代码是:'||sqlcode||'错误消息是:'||sqlerrm);
end;


注:

1.'PLOG_DIR' 是directory,必须大写

2.'a' 是在日志文件后追加信息


三、在需要写入日志的地方调用该存储过程,就可以了。

分享到:
评论

相关推荐

    plsql连接oracle服务器监听配置文件

    plsql连接oracle服务器监听配置文件: 需要进入plsql的安装目录:product\11.1.0\db_3\NETWORK\ADMIN 将附件存入该目录下,需要修改对应的IP地址

    不用安装oracle客户端,用PLSQL访问服务器oracle数据库所需的所有文件

    4. **配置tnsnames.ora**:在TNS_ADMIN指定的目录下创建或编辑tnsnames.ora文件,定义要连接的Oracle服务器的网络服务名。例如: ``` MYDB = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = server.example...

    plsql连接oracle数据库插件

    Oracle数据库是全球广泛使用的数据库管理系统,而PL/SQL(Procedural Language/SQL)是Oracle专为数据库操作设计的一种过程化编程语言。在IT行业中,使用PL/SQL连接Oracle数据库是一项基本技能,尤其是在进行数据库...

    关于plsql连接远程oracle服务器配置心得体会

    "关于PL/SQL连接远程Oracle服务器配置心得体会" PL/SQL是Oracle数据库的过程语言,可以用来编写存储过程、函数和触发器等。PL/SQL提供了一个强大且灵活的编程环境,使开发者可以更方便地管理和维护Oracle数据库。 ...

    PLSQL集成ORACLE客户端精简版

    描述中提到的“不需要安装oracle客户端”,意味着这个精简版可能包含了一些必要的Oracle连接组件,如oci.dll和其他库文件,它们使得PLSQL Developer可以直接连接到Oracle服务器,而无需安装完整的Oracle Client。...

    plsql 免安装oracle客户端版

    2. **免安装Oracle客户端**: 此版本的PLSQL Developer集成了Oracle的网络协议组件(如Oracle Net Services)和必要的库文件,使得用户可以直接连接到远程Oracle服务器,而无需在本地系统上安装Oracle Database ...

    PLSQL链接局域网Oracle数据库文件

    PLSQL链接局域网Oracle数据库文件,把ip配一下就ok。PLSQL链接局域网Oracle数据库文件,把ip配一下就ok。积分是网站自己调整的,我设置的5分,不够的可以私信我,我调整就OK

    plsql和oracle客户端安装包

    在这里,你需要输入Oracle服务器的主机名或IP地址、监听端口(默认为1521)、服务名(SID或Service Name,可以在数据库服务器的tnsnames.ora文件中找到),以及登录的用户名和密码。 配置ORACLE_HOME环境变量是使用...

    无需安装oracle客户端可以直接使用plsql连接oracle数据库

    标题中的“无需安装oracle客户端可以直接使用plsql连接oracle数据库”是指使用PL/SQL Developer这款工具进行Oracle数据库管理,而不需要在本地系统上完整安装Oracle客户端软件。PL/SQL Developer是Allround ...

    plsql配置oracle11g

    1. **安装Oracle客户端**:首先,你需要安装Oracle Instant Client,这是与Oracle服务器通信的基础。在提供的`instantclient_11_2`文件中,包含了必要的库文件和API,用于支持连接。解压这个文件到一个合适的目录,...

    PLSQL developer远程连接oracle服务器

    为了在客户端计算机上能够连接到远程Oracle服务器,需要在客户端计算机上安装Oracle客户端软件。 ##### 1. 下载Oracle客户端 - **下载地址**:可以从Oracle官网下载对应版本的客户端软件。 - 地址:`...

    PLSQL Developer 12.0.7连接Oracle12c数据库 首选项配置文件

    PLSQL Developer是一款强大的Oracle数据库开发工具,而Oracle 12c是Oracle公司推出的数据库服务器版本。在使用PLSQL Developer 12.0.7连接Oracle 12c数据库时,首选项配置文件扮演了关键角色,它允许用户自定义连接...

    解决64为操作系统plsql连接oracle详细说明

    在64位操作系统上连接Oracle数据库通常涉及到一些特定的配置步骤,因为PL/SQL Developer(简称PLSQL)是32位应用程序,而64位系统可能默认不支持32位应用。以下是一份详细的步骤指南,帮助你在64位操作系统上成功地...

    不安装oracle使用plsql

    标题中的“不安装oracle使用plsql”意味着要在没有Oracle数据库客户端的情况下使用PL/SQL Developer这一工具。这通常通过Oracle的Instant Client实现,该组件提供了一种轻量级的解决方案,允许用户连接到Oracle...

    plsql 和 Oracle instantclient 安装文件

    3. **配置**: 安装后,需要配置环境变量(如TNS_ADMIN和ORACLE_HOME),以及tnsnames.ora文件,以指定连接的Oracle服务器信息。 4. **兼容性**: Oracle Instant Client与不同版本的Oracle数据库兼容,允许连接到较...

    PLSQL安装包及oracle服务器端解压包

    PLSQL安装包(10版本),其中附有汉译,及破解工具。及oracle服务器端解压包,从官网下载,最新下载,用于64位oracle数据库的远程服务链接,及如何配置环境文件。解决大家的所有问题。

    PLSQLDeveloper+Oracle client 10

    - **网络配置**:Oracle Client通过网络协议(如TCP/IP)与Oracle服务器建立连接,需要配置tnsnames.ora文件来定义服务名。 - **SQL*Plus**:Oracle Client自带的命令行工具,可以执行SQL语句和PL/SQL块。 - **...

    PLSQL免安装版(无需安装Oracle客户端)

    启动"plsqlDev辅助启动器.exe"是连接到Oracle服务器的关键步骤。在首次运行时,可能需要配置一些参数,包括但不限于: 1. **数据库连接参数**:输入你的Oracle服务器的TNS名称或者直接输入IP地址、端口号和服务名。...

    不用安装oracle客户端也可以用plsql连接远程oracle

    不用安装oracle客户端也可以用plsql连接远程oracle 在安装ORACLE服务器的机器上搜索下列文件 配置tnsnames.ora 添加一个环境变量

    只装plsql不装oracle客户端链接方法

    配置 tnsnames.ora 文件,如果本机上没有安装 Oracle,可以从安装了 Oracle 的机器上拷贝一个(tnsnames.ora 文件在 %ORACLE_HOME%\network\admin 下)。放在上面的目录 D:\oraclient 下。 添加一个环境变量,名为 ...

Global site tag (gtag.js) - Google Analytics