`

ORACLE 命名空间

 
阅读更多
转自
http://friendlysong.blog.163.com/blog/static/32252439201122631949422/

不知道大家在学习的过程中有没有注意到过这样的一个问题,当你创建一个表,名字为TEST。也许过几天当你做索引或者视图实验的时候,想再次创建一个名字为TEST的索引或视图的时候,ORACLE会提示你已经存在该对象。本来我也没太在意,我以为就是以前可能创建过一个同名的对象呗,可做的实验多了我发现好像里面有些蹊跷,比如说我有个表叫TEST,那么当我再创建一个TEST视图的时候就会报错,可我如果再创建的不是视图,而是一个叫做TEST的索引的时候,就不会报错。由此引申出了命名空间的概念,在这之间我一直没在ORACLE中思考过这个概念,只是在学习C++的时候知道有namespace。于是去网上搜了些相关资料,自己做了下实验,在这里小总结一下~

命名空间定义了一组对象类型,在命名空间里,对象的名字必须是唯一的,当然,在不同的命名空间里,是可以使用相同的的名字的。





下面的对象类型共享同一个命名空间:
? Tables
? Views
? Sequences
? Private synonyms
? Stand-alone procedures
? Stand-alone stored functions
? Packages
? Materialized views
? User-defined types


因此,如果数据库中有一个表叫做TEST,那么就不能再创建一个叫做TEST的视图,至少,在一个schema中是不可能出现这种现象的。



下面的对象类型有各自的命名空间:
? Indexes
? Constraints
? Clusters
? Database triggers
? Private database links
? Dimensions









所以你可以创建一个叫做TEST的索引,即使在相同的schema中。







不受Schema局限的对象类型(Non schema objects)有它们自己的命名空间,如下:
? User roles
? Public synonyms
? Public database links
? Tablespaces
? Profiles
? Parameter files (PFILEs) and server parameter files (SPFILEs)




所以两个Non-schema objects可以用相同的名字。
 
分享到:
评论

相关推荐

    oracle创建表空间指令

    创建oracle表空间的具体指令及步骤,首先创建临时表空间然后创建表空间

    Oracle.DataAccess.dll

    1、未能找到类型或命名空间名称“Oracle”(是否缺少 using 指令或程序集引用?) 2、未能找到类型或命名空间名称“OracleConnection”(是否缺少 using 指令或程序集引用?) 3、未能找到类型或命名空间名称...

    oracle9i oracle11g oracle10g 性能调优 基础学习 视频地址

    Oracle一个女人和五个男人的故事(数据库命名习惯) 3 oracle_内部事件(Oracle高级工具的应用) 3 oracle中的查询 4 玩转oracle全套教程 韩顺平 第1讲 oracle基础介绍 4 韩顺平.玩转oracle第2讲.oralce安装 4 ...

    21天学通Oracle

    5.1.2 创建Oracle表空间 64 5.1.3 查看表空间 66 5.1.4 修改数据库默认表空间 67 5.1.5 修改表空间名称 68 5.1.6 删除表空间 69 5.2 创建Oracle数据表 70 5.2.1 利用工具创建数据表 70 5.2.2 利用工具查看...

    Oracle11g从入门到精通2

    7.1.3 实现命名简洁性和易读性 7.1.4 实现更改灵活性 7.2 实现记录的唯一性 7.2.1 用键实现 7.2.2 创建唯一索引 7.2.3 使用序列实现 7.3 实现数据的完整性 7.3.1 域完整性 7.3.2 实体完整性 7.3.3...

    oracle10g课堂练习I(1)

    命名数据库对象 7-6 指定表中的数据类型 7-8 创建和修改表 7-11 了解数据完整性 7-13 定义约束条件 7-15 违反约束条件 7-16 约束条件状态 7-17 约束条件检查 7-19 使用 SQL 创建约束条件:示例 7-20 查看表...

    Oracle DBA workshop1 (中文版)

    命名数据库对象7-6 指定表中的数据类型7-8 创建和修改表7-11 了解数据完整性7-13 定义约束条件7-15 违反约束条件7-16 约束条件状态7-17 约束条件检查7-19 使用SQL 创建约束条件:示例7-20 查看表中的列7-21 查看表的...

    Oracle 主要配置文件介绍

    Oracle 应 用进行文件 I/O操作的目录为任意目录 因此 只要空间允许 可以将备份数 据存放到任意目录下 <br>1.2.4 监听配置文件 为了使得外部进程 如 CAMS后台程序 能够访问 Oracle 数据库 必须配 ...

    Oracle数据库管理员技术指南

    1.2.1 怎样命名数据库文件 1.2.2 使用最佳灵活结构 1.2.3 怎样配置符合 OFA 的 Oracle 文件 系统 1.3 规划数据库文件布局 1.3.1 最大化可用性的规划 1.3.2 最小化磁盘争用的规划 1.4 建立参数文件 1.4.1 ...

    oracle操作文档.zip

    该操作文档记录了oracle11G还原oracle10G、oracle11g还原时报表空间不存在报错问题的解决方案、oracle数据库操作等常用命令,里面的一些命名需要根据实际的开发环境进行变更,切勿直接copy

    Oracle.ManagedDataAccess.zip

    推荐使用oracle.ManagedDataAccess.dll(oracle.ManagedDataAccess.Client)全托管驱动。实际使用发现,oracle全托管驱动对32位和64位oracle...在项目数据访问层中引用命名空间using oracle.ManagedDataAccess.Client

    Oracle11g从入门到精通

    7.1.3 实现命名简洁性和易读性 7.1.4 实现更改灵活性 7.2 实现记录的唯一性 7.2.1 用键实现 7.2.2 创建唯一索引 7.2.3 使用序列实现 7.3 实现数据的完整性 7.3.1 域完整性 7.3.2 实体完整性 7.3.3 引用完整...

    构建最高可用Oracle数据库系统 Oracle 11gR2 RAC管理、维护与性能优化

    6.1.2 Oracle Net命名方法 6.1.3 Oracle Net工作原理 6.1.4 Oracle Net Listener工作原理 6.1.5 JDBC工作原理 6.2 Oracle高可用性连接组件 6.2.1 SCAN别名 6.2.2 SCAN监听器 6.2.3 SCAN解析 6.2.4 SCAN兼容...

    Oracle Database 11g初学者指南--详细书签版

    在过去的14年中,他与IanAbramson和MichaelCorey为OraclePress合著了一系列图书.Abbey在国际Oracle用户团体非常活跃,经常出席COLLABORATE、OraclecOpenWorld和区域性用户组会议.  Michael J.Corey是Ntirety...

    ORACLE9i_优化设计与系统调整

    第一部分 ORACLE系统优化基本知识 23 第1章 ORACLE结构回顾 23 §1.1 Oracle数据库结构 23 §1.1.1 Oracle数据字典 23 §1.1.2 表空间与数据文件 24 §1.1.3 Oracle实例(Instance) 24 §1.2 Oracle文件 26 §1.2.1...

    学生成绩管理系统Oracle全部SQL语句.txt

    1、创建数据库实例,数据库表空间,创建管理员,普通用户,并分别授予相应权限; 2、至少建立5个表,以及表间关系,使用到序列,索引,视图,同义词,约束,每个表至少插入相关信息10条记录; 3、要求使用sqlplus,...

    最全的oracle常用命令大全.txt

    ORACLE常用命令 一、ORACLE的启动和关闭 1、在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle a、启动ORACLE系统 oracle>svrmgrl SVRMGR>connect internal SVRMGR>startup ...

    Oracle.11g.从入门到精通 (2/2)

    7.1.3 实现命名简洁性和易读性 7.1.4 实现更改灵活性 7.2 实现记录的唯一性 7.2.1 用键实现 7.2.2 创建唯一索引 7.2.3 使用序列实现 7.3 实现数据的完整性 7.3.1 域完整性 7.3.2 实体完整性 7.3.3 引用完整性 7.3.4 ...

    使用PLSQL创建Oracle数据库User用户并设置权限

    使用PLSQL创建Oracle数据库User用户并设置权限 主要演示了如何使用 PLSQL 创建一个 User 用户, 并使之具有创建表、修改表、访问表的权限。解决了 使用自定义用户创建表时出现的 没有表空间的访问权限的问题。

Global site tag (gtag.js) - Google Analytics