ORACLE的 DIRECTORY在数据库中是个目录的路径,需要在 *** 作系统中有相应的目录与之对应;ORACLE目录的作用就是让ORACLE数据库和 *** 作系统之前进行文件的交互,最常见的就是数据泵的导入和导出。
directory对象所定义的路径可以在EM中的“管理”-“方案”-“对象目录”进行修改。或者使用SQL>create or replace directory databak as 'e:\bak'语句进行修改。
Oracle Directory(目录)可以让用户在Oracle数据库中灵活地对文件进行读写 *** 作,极大地提高了Oracle的易用性和可扩展性。
CREATE [OR REPLACE] DIRECTORY DIRECTORY AS 'PATHNAME'。
创建和删除Directory的权限为:CREATE ANY DIRECTORY、DROP ANY DIRECTORY。赋予普通用户使用Directory的权限包括READ、WRITE、EXECUTE,也可以直接写ALL,如下所示:
GRANT READ,WRITE,EXECUTE ON DIRECTORY EXP_DIR_LHR TO LHR。
GRANT ALL ON DIRECTORY EXP_DIR_LHR TO LHR。
需要注意的是,在创建Directory数据库对象时对应的路径不存在也不会报错,Oracle数据库并不会到 *** 作系统上检验路径的存在性,只有在使用时才会校验,因此在创建Directory时谨记对应的路径的真实存在性,否则可能会报ORA-29913或ORA-29400的错误。
ORACLE的 DIRECTORY在数据库中是个目录的路径,需要在 *** 作系统中有相应的目录与之对应;ORACLE目录的作用就是让ORACLE数据库和 *** 作系统之前进行文件的交互,最常见的就是数据泵的导入和导出。
DIRECTORY的管理:
1、创建:CREATE [OR REPLACE] DIRECTORY directory AS 'pathname' 。
例如:CREATE OR REPLACE DIRECTORY DIR AS 'F:\expbak'。
2、赋权:GRANT READ[,WRITE] ON DIRECTORY directory TO username。
例如:grant read, write on directory exp_dir to john。
3、查询directory的方法。
select * from dba_directories。
4、删除:drop directory DATACHK_DUMP。
5、通过数据泵导出数据到相应的目录。
在ORACLE如何查看自己建立的所有表,而不是系统表?1、 在计算机中,打开Oracle的连接程序,用新建的数据库管理员,进入【Oracle控制】的窗口上,鼠标左键单击【服务器】按钮,并选择【SQL工作表】,如下图所示。2、接着,在【Oracle服务器】的窗口上,在输入窗口中输入SQL查询语句,并单击【执行】按钮,可以看到查询不到索引表,需要调整SQL语句,如下图所示。
3、然后,在【SQL工作表】的窗口上,输入查询索引表的SQL语句,可以作为参考,如下图所示。
4、 接着,在【SQL工作表】的窗口上,输查询索引表的SQL语句,并单击【执行】按钮,如下图所示。
5、然后,在【SQL工作表】的窗口上,可以看到SQL语句执行成功的提示信息,查询到用户的索引表中的字段,如下图所示。
6、接着,在【SQL工作表】的窗口上,修改索引表的名称,并单击【执行】按钮,如下图所示。
可以根据表建时间不同,来将你本人建的表和数据库自动建的表分开,虽然他们都是同一个用户建的。
在user_table表里没有建表时间这一字段,可以用user_objects这个表。
数据库系统建的表的时间和oracle发行版本有关,我的10.2.0.10版中这些都是2005-8-30建的,你本人建的表都大于这个时间。或者将范围缩更小些,找你最近两个月、一年建的表
具体的
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)