oracle中 Schema.TableName,schema是怎么回事?
我原来用sql server,里面没有明确的schema概念。
1 一个表,视图等对象是否必须属于一个schema(一个oracle用户)?
我觉得是。如果创建对象时候没有写schema,就是当前登陆用户。对么?
2 常用情况下,是不是不是用普通数据库用户来区分schema,而是单独根据系统创建schema(没有登陆权限),例如 SCM,HR等以系统区分。
两个schema下面,可以有完全相同的表名字,但内容不同。
我觉得这样合理,是这样么?
3 一个用户可以创建另一个用户的表、视图等对象,也可以访问他们的对象,对么?
例如,用户sys1登陆,create table SCM.NewTable(...)
最后一个问题,这时候sys1,和scm权限之间关系是什么?