schema是特定用户拥有的数据库对象的集合,schema和数据库用户有相同的名字,因此两个术语是同义的(synonymous)
schema objects包含你在表空间中看到的段(表,索引等),也包含用户拥有的非段的数据库对象。这些非段对象包括约束、视图、同义词、过程和包。
不被用户拥有的数据库对象包括角色、表空间和目录就不是模式对象(schema objects)。
来自《Sybex OCA Oracle 10g Administration I Study Guide 1Z0-042(2004).pdf》
oracle中的schema就是指一个用户下所有对象的集合,schema本身不能理解成一个对象,oracle并没有提供创建schema的语法,schema我自己理解也并不是在创建user时就创建,而是在该用户下创建第一个对象之后schema也随之产生,只要user下存在对象,schema就一定存在,user下如果不存在对象,schema也不存在;这一点类似于temp tablespace group,另外也可以通过oem来观察,如果创建一个新用户,该用户下如果没有对象则schema不存在,如果创建一个对象则和用户同名的schema也随之产生。。。如果此时把对象删除,schema是否还存在,这一点需要验证一下。。。没有oem,无法验证。
来自《itpub》