1、用户主要用于登录连接、操作数据库对象等;
2、模式相当于数据库中相关对象的集合;
3、达梦数据库中一个数据库用户创建之后会自动生成一个默认的模式,默认模式名与用户名相同;
4、一个用户可以拥有多个模式,一个模式只能属于一个用户;
5、用户访问非默认模式下的对象时,需要在对象名前面添加模式名(模式名.对象名),访问默认模式下的对象可以不添加模式名;
6、用户的默认模式无法单独删除,需要直接删除用,而非默认模式可以单独删除;
7、系统视图中,比如dba_tables等中OWNER对应的是模式名,而非用户名;
8、用户可以设置默认模式,JDBC数据源连接串中可以添加schema属性配置指定当前用户登录后操作的当前模式;
9、查询用户拥有的模式:
SELECT B.USERNAME,A.NAME SCHEMA_NAME
FROM SYSOBJECTS A,DBA_USERS B
WHERE A.PID=B.USER_ID
AND A.TYPE$='SCH'
ORDER BY B.USERNAME;
---或者
SELECT B.USERNAME,listagg(A.NAME,',') within group (order by B.USERNAME) as SCHEMAS
FROM SYSOBJECTS A,DBA_USERS B
WHERE A.PID=B.USER_ID
AND A.TYPE$='SCH'
GROUP BY B.USERNAME;
本文介绍了数据库中用户和模式的概念及其关系。用户用于登录和操作数据库对象,每个用户可以有多个模式,模式是对象的集合。达梦数据库中用户创建后会有一个默认模式,与用户名相同。访问非默认模式需指定模式名。用户可设置默认模式,并通过JDBC的schema属性指定操作模式。查询用户模式可通过SQL语句实现。系统视图如dba_tables中的OWNER字段显示模式名而非用户名。
987

被折叠的 条评论
为什么被折叠?



