Oracle对目录文件(directory)的读写操作
Create directory让我们可以在Oracle数据库中灵活的对文件进行读写操作,极大的提高了Oracle的易用性和可扩展性。
其语法为:
create or replace directory exp_dir as '/tmp';
目录创建以后,就可以把读写权限授予特定用户,例如:
grant read, write on directory exp_dir to eygle;
此时用户eygle就拥有了对该目录的读写权限。
例如:
当用SCOTT进行目录创建的时候,首先应该赋给SCOTT创建目录的权限,如果没有则会报一下错误
SQL> create or replace directory MY_DIR as 'd:\test';
create or replace directory MY_DIR as 'd:\test'
ORA-01031: 权限不足
SQL> GRANT CREATE ANY DIRECTORY TO scott;--授权给SCOTT用户创建目录权限
Grant succeeded
SQL>create or replace directory MY_DIR as 'd:\test';--创建了一个目录名为'MY_DIR'的目录,他的路径是'd:\test'
Directory created.
SQL>select * from all_directories;--查看创建的目录
OWNER DIRECTORY_NAME DIRECTORY_PATH
SYS MY_DIR d:\test
SQL> drop directory my_dir;--删除目录
Directory dropped
写入文件:
SQL> DECLARE
2 filehandle utl_file.file_type;
3 begin
4 filehandle := utl_file.fopen('MY_DIR','test.txt','w');
5 utl_file.put_line(filehandle,'test 1 write one.');
6 utl_file.put_line(filehandle,'你好!');
7 utl_file.fclose(fil
相关文档:
今天公司因为业务需要,修要修改某个字段数据类型有number(5),变为number(5,2)型
要是没有数据的话直接用以下语句即可
alter table tb_test modify permile number(5,2);
但是有数据的话 就不能用上面方法了,
alter table tb_test add permile_temp number(5,2)
update tb_test set  ......
数据说明一切:
create table dept(deptno number,deptname varchar2(20),mgrno number);
insert into dept values (1, '总公司', null);
insert into dept values (2, '浙江分公司', 1);
insert into dept values (3, '杭州分公司', 2);
commit;
select t.* from dept t;
DEPTNO &n ......
手头正在进行一个项目,需要全文检索,经过同事仔细搜索发现:oracle提供oracle text的全文检索功能。
oracle text的简单应用经同事测试结果正常,按照项目要求(项目预定方案word文档存入数据库(blob类型))使用oracle text查询结果确是为空,同事研究到此中断。
  ......
在SQL语句优化过程中,经常会用到hint,
以下是在SQL优化过程中常见Oracle中"HINT"的30个用法1. /*+ALL_ROWS*/
表明对语句块选择基于开销的优化方法,并获得最佳吞吐量,使资源消耗最小化.
例如:
SELECT /*+ALL+_ROWS*/ EMP_NO,EMP_NAM,DAT_IN from BSEMPMS WHERE EMP_NO='SCOTT';
2. /*+FIRST_ROWS*/
表明对语句块选择 ......