本文为第二届openGauss每日一练,21天打卡计划第7天的作业部分,课程内容总结如下openGauss每日一练第 7 天-数据库状态查看
作业1
.查看当前数据库下有哪些模式
\dn

作业2
然后为数据库musicdb创建4个模式,名称自定义
create schema schm1 AUTHORIZATION user1;
create schema schm2 AUTHORIZATION user1;
create schema schm3 AUTHORIZATION user1;
create schema schm4 AUTHORIZATION user1;

作业3
在数据库musicdb的不同的模式下创建同名的表
create table schm1.ttt(col varchar(100));
create table schm2.ttt(col varchar(100));
create table schm3.ttt(col varchar(100));
create table schm4.ttt(col varchar(100));
insert into schm1.ttt values('Hello! from schema schm1 11111');
insert into schm2.ttt values('Hello! from schema schm2 22222');
insert into schm3.ttt values('Hello! from schema schm3 33333');
insert into schm4.ttt values('Hello! from schema schm4 44444');
--创建视图:
create or replace view my_tables as
select table_catalog, table_schema, table_name, table_type
from information_schema.tables
where table_schema not in ('pg_catalog', 'information_schema','dbe_perf');
--查看视图:
select * from my_tables;

作业4
访问musicdb数据库下不同模式的同名表
--访问musicdb数据库下其他模式的表,需要指定模式名前缀:
select * from schm1.ttt;
select * from schm2.ttt;
select * from schm3.ttt;
select * from schm4.ttt;

作业5
实验理解:模式是在数据库层面,用户是在实例层面
create user2 password 'kunpeng@1234';
\c musicdb omm
create schema user2 authorization user2;
\c musicdb user2
select * from ttt;
select * from schm1.ttt;
select * from public.my_tables;

创建了一个新用户user2, 不给他授予管理员权限,在musicdb下创建user2同名模式,则user2只能访问自己模式下的,也不能访问public的

只能看到有哪些模式,看不到所有者

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




