`
- 浏览:
77544 次
- 性别:
- 来自:
上海
-
看来有的人还是对schema的真正含义不太理解,现在我再次整理了一下,希望对大家有所帮助。我们先来看一下他们的定义:Aschemais a collection of database objects
(used by a user.).Schema objectsare the logical structures that directly refer to the database’s data.Auseris a name defined in the database that
can connect to and access objects.Schemas and usershelp database administrators manage database security.从定义中我们可以看出schema为数据库对象的集合,为了区分各个集合,我们需要给这个集合起个名字,这些名字就是我们在企业管理器的方案下看到的许多类似用户名的节点,这些类似用户名的节点其实就是一个schema,schema里面包含了各种对象如tables,
views, sequences, stored procedures, synonyms, indexes, clusters, and database links。一个用户一般对应一个schema,该用户的schema名等于用户名,并作为该用户缺省schema。这也就是我们在企业管理器的方案下看到schema名都为数据库用户名的原因。Oracle数据库中不能新创建一个schema,要想创建一个schema,只能通过创建一个用户的方法解决(Oracle中虽然有create
schema语句,但是它并不是用来创建一个schema的),在创建一个用户的同时为这个用户创建一个与用户名同名的schem并作为该用户的缺省shcema。即schema的个数同user的个数相同,而且schema名字同user名字一一 对应并且相同,所有我们可以称schema为user的别名,虽然这样说并不准确,但是更容易理解一些。一个用户有一个缺省的schema,其schema名就等于用户名,当然一个用户还可以使用其他的schema。如果我们访问一个表时,没有指明该表属于哪一个schema中的,系统就会自动给我们在表上加上缺省的sheman名。比如我们在访问数据库时,访问scott用户下的emp表,通过select * from emp; 其实,这sql语句的完整写法为select * from scott.emp。在数据库中一个对象的完整名称为schema.object,而不属user.object。类似如果我们在创建对象时不指定该对象的schema,在该对象的schema为用户的缺省schema。这就像一个用户有一个缺省的表空间,但是该用户还可以使用其他的表空间,如果我们在创建对象时不指定表空间,则对象存储在缺省表空间中,要想让对象存储在其他表空间中,我们需要在创建对象时指定该对象的表空间。咳,说了这么多,给大家举个例子,否则,一切枯燥无味!SQL> Gruant dba to scottSQL> create table test(name char(10));Table created.SQL> create table system.test(name char(10));Table created.SQL> insert into test values('scott');1 row created.SQL> insert into system.test values('system');1 row created.SQL> commit;Commit complete.SQL> conn system/managerConnected.SQL> select * from test;NAME----------systemSQL> ALTER SESSION SET CURRENT_SCHEMA = scott; --改变用户缺省schema名Session altered.SQL> select * from test;NAME----------scottSQL> select owner ,table_name from dba_tables where table_name=upper('test');OWNER TABLE_NAME------------------------------ ------------------------------SCOTT TESTSYSTEM TEST--上面这个查询就是我说将schema作为user的别名的依据。实际上在使用上,shcema与user完全一样,没有什么区别,在出现schema名的地方也可以出现user名。
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
在Oracle数据库中,Schema是一个非常重要的概念,它代表了数据库对象的集合,这些对象包括但不限于表格、视图、序列、存储过程、同义词、索引、簇和数据库链接等。Schema是逻辑结构,直接与数据库的数据相关,帮助...
oracle中schema指的是什么意思.doc
Oracle数据库中,用户(User)和模式(Schema)是两个紧密相关却又鲜明不同的概念。用户是指拥有数据库权限和资源的实体,而模式则是指一组数据库对象的集合,包括表、视图、索引、同义词等等。 首先,从官方文档中...
例如,如果你在Oracle数据库中,你可以使用`DESCRIBE`命令来查看表的Schema信息,或者使用`SELECT * FROM ALL_TAB_COLUMNS`查询Catalog中的所有表和列信息。在PostgreSQL中,可以查询`pg_catalog`中的系统表来获取元...
在IT行业中,Schema通常指的是数据模型的结构,特别是在数据库管理系统中。Schema生成工具是一种非常实用的软件开发辅助工具,它能够帮助开发者自动生成数据库模式(Schema),极大地提高了工作效率,减少了手动编写...
本文将详细探讨如何利用专业工具生成Schema、DBSVR(数据库服务器)以及BLSVR(可能指的是业务逻辑服务器)。 首先,让我们理解Schema。在数据库系统中,Schema是数据库结构的蓝图,定义了数据库中表、视图、存储...
在Oracle数据库中,模式(schema)对象是指数据库中数据的逻辑结构,如表、视图、索引、同义词等。表是存储数据的基本单位,可以包含多个列和行。索引用于提高数据检索的速度,而视图是一种虚拟表,通过查询其他表来...
2. `ot_schema.sql`: "schema"在Oracle中是指一个逻辑结构,包含了一组相关的对象,如表、视图、索引等。`ot_schema.sql`可能包含了创建这些对象的SQL语句,如CREATE TABLE、CREATE INDEX、CREATE VIEW等,这为我们...
Oracle 从入门到精通是指通过学习和实践,掌握Oracle数据库管理系统的全部知识和技能,从基本概念到高级应用。 一、SQL基本概念 SQL(Structured Query Language)是一种用于管理关系数据库的标准语言。它用于存取...
描述中提到的"同时修改mysql数据表标识"可能是指自增主键。在MySQL中,我们通常使用`AUTO_INCREMENT`属性来定义自增主键,而在Oracle中,可使用`SEQUENCE`对象来生成序列号。在数据同步过程中,如果需要保持两个...
在Oracle中,一个模式(Schema)是一个逻辑上的容器,它包含了用户的对象,如表、索引、视图、存储过程等。开发者和管理员经常使用样本模式来学习数据库的运作机制,测试新功能,或者作为基准来对比实际应用的性能。...
XML 解析是指将 XML 文档解析成 Oracle 数据库中的数据结构,而 XML 验证是指验证 XML 文档是否符合指定的 XML 模式。XML 转换是指将 XML 数据转换成其他数据格式。 XML 索引 Oracle 9i XML 数据库支持 XML 索引,...
oracle.xdk.parser.java可能是指Oracle XML Developer Kit (XDK)的一部分,XDK是一个全面的XML开发工具集,包括解析器、DOM实现、SAX接口以及XML Schema处理等,对于处理XML数据的数据库应用非常关键。 oracle....
2. 一个模式(Schema)在Oracle数据库中是一个逻辑上的对象组织,包含表、视图、索引等数据库对象。选项2 "一个逻辑上的对象组织"是正确答案。 3. Oracle实例由Oracle内存结构、I/O结构和后台进程组成。所以,选项4...
标题中提到的“oracle迁移到pg全流程.pdf”指的是Oracle数据库迁移到PostgreSQL数据库的整个操作流程,这是一份详细介绍迁移过程中涉及的关键技术点和步骤的文档。文档的【描述】部分强调了在迁移过程中需要关注的几...
Schema在IT领域中是一个关键的概念,特别是在数据库管理和数据建模中。它指的是一个数据库或数据集的整体结构,包括数据表、字段、索引、关系和其他数据库对象的定义。深入理解Schema对于任何从事数据库设计、开发或...
Oracle 静默安装是指在不需要用户交互的情况下安装 Oracle 数据库的过程。该过程可以通过 response 文件来实现,response 文件包含了安装过程中需要的所有参数和选项。下面将详细介绍 Oracle 静默安装的步骤和过程。...
加载加速是指将Oracle数据库中的数据快速加载到pg中的过程。可以使用pg的 COPY 命令或其他工具来实现加载加速。 七、业务逻辑存储过程迁移 业务逻辑存储过程迁移是指将Oracle的存储过程迁移到pg中的过程。需要对...