使用Oracle外部表的五个限制
外部表是指不在数据库中的表,如操作系统上的一个按一定格式分割的文本文件或者其他类型的表。这个外部表对于Oracle数据库来说,就好像是一张视图,在数据库中可以像试图一样进行查询等操作。这个试图允许用户在外部数据上运行任何的SQL语句,而不需要先将外部表中的数据装载进数据库中。不过需要注意是,外部数据表都是只读的,不能够更改。不过在使用外部表时仍然有不少的限制。
限制一:需要先建立目录对象。
在使用外部数据表的时候,需要先建立目录对象。也就是说,要想Oracle数据库系统访问操作系统文件,就必须在数据库中建立指向这个操作系统文件的目录对象,然后通过这个目录对象访问相应的操作系统文件,即用目录对象存储操作文件的保存位置。不过需要注意,这个目录对象普通用户是无权创建的。一般情况下只有特权用户或者数据库管理员角色才可以创建目录对象。如果允许其他用户也可以创建目录对象的话,就需要授权给其他用户。
其实这个目录对象就是操作系统中文件或者表格的存储位置。不过在建立对象的时候,需要小心,Oracle数据库系统不会去确认这个目录是否真的存在。如果在输入这个目录对象的时候,不小心把路径写错了,那可能这个外部表仍然可以正常建立,但是却无法查询到数据。由于建立目录对象时,缺乏这种自我检查的机制,为此在将路径赋予给这个目录对象时,需要特别的注意。另外需要注意的是路径的大小写。在Windows操作系统中,其路径是不区分大小写的。而在Linux操作系统,这个路径需要区分大小写。故在不同的操作系统中,建立目录对象时需要注意这个大小写的差异。最好数据库管理员可以养成一个习惯,无论在什么操作系统中,都采用小写的目录名与文件名。那么在不同的操作系统中,就不用受到这个大小写的困扰了。最后需要注意的是,目录对象名必须唯一。如果目录对象名字有重复的话,系统会提示错误信息:“名称已有现有对象引用”,而不会自动覆盖原有的对象名设置。
虽然这个对象名设置比较简单,但是其是数据库寻找操作系统上文件的唯一途径。所以这个目录对象的创建必须确保准确。否则的话,外部表就可能无法正常使用。
限制二:对于操作系统文件的限制。
其实外部表简单的说,就是跟操作系统上固定格式的文件或者表格的一个连接。为了Oracle数据库系统能够正确链接外部表,对于
相关文档:
PL/SQL
块结构
DECLARE
声明部分
BEGIN
可执行部分
EXCEPTION
异常处理部分
END;
例:
首先我们看一个简单之例子,下面这个例子是统计从1 ......
IP 地址做如下修改:
Public IP 10.85.10.119/121 -- > 10.85.10.219/221
Privite IP 192.168.1.119/121 -- > 192.168.1.219/221
Virtual IP 10.85.10.122/123 -- ......
1.在删除一个表中的全部数据时,须使用TRUNCATE TABLE 表名;因为用DROP TABLE,DELETE * from 表名时,TABLESPACE表空间该表的占用空间并未释放,反复几次DROP,DELETE操作后,该TABLESPACE上百兆的空间就被耗光了。
2.having 子句的用法
having 子句对 group by 子句所确定的行组进行控制,having 子 ......
--sqlplus
sqlplus;
sys /password as sysdba;
--查找用户ID(user#),数据库里面存放的用户都是大写!
select user#,name,password from user$ where name ='FACT';
USER# NAME   ......
Oracle认证专家——OCP,是由Oracle公司授权国际考试认证中心对考生进行的资格认证。考生按考试标准要求参加几门课程的考试(一般为3—5门),在通过全部考试后,便可获得OCP的专家认证。
目前OCP认证考试分为:
Database AdministratorDatabase OperatoDatabase DeveloperJava DeveloperApplication Consul ......