实操作业
实操目标
学习openGauss表的创建、搜索路径和访问方法等
--实验准备
drop tablespace if exists tmatbs_test;
drop database if exists enmdb;
drop user if exists tmauser;
create user tmauser SYSADMIN PASSWORD 'test@123';
create tablespace tmatbs_test relative location 'tablespace/tmatbs_test';
create database enmdb owner tmauser tablespace tmatbs_test;
1.创建一个表(默认,不指定模式),查看该表在那个模式下
omm=# create table t1(id int);
omm=# \d
List of relations
Schema | Name | Type | Owner | Storage
--------+------+-------+-------+----------------------------------
public | t1 | table | omm | {orientation=row,compression=no}
(1 row)
2.使用一个用户连接到enmdb数据库,测试该用户可以访问不同模式中的表
\c enmdb tmauser
enmdb=> \dn
List of schemas
Name | Owner
-----------------+-------
blockchain | omm
cstore | omm
db4ai | omm
dbe_perf | omm
dbe_pldebugger | omm
dbe_pldeveloper | omm
pkg_service | omm
public | omm
snapshot | omm
sqladvisor | omm
(10 rows)
--分别创建三个模式 sch1 sch2 sch3,并创建同名t1表,插入不同数据并访问
create schema sch1;
create schema sch2;
create schema sch3;
create table sch1.t1(id int4);
create table sch2.t1(id int4);
create table sch3.t1(id int4);
insert into sch1.t1 values(946);
insert into sch2.t1 values(9466);
insert into sch3.t1 values(94666);
select * from sch1.t1;
select * from sch2.t1;
select * from sch2.t1;
enmdb=> select * from sch1.t1;
id
-----
946
(1 row)
enmdb=> select * from sch2.t1;
id
------
9466
(1 row)
enmdb=> select * from sch2.t1;
id
------
9466
(1 row)
enmdb=>
3.在会话级设置模式搜索路径为:模式enmschm1,使用SchemaName.TableName的表标识方法访问表(创建表、插入数据和查询表中数据)
--创建模式enmschm1
create schema enmschm1;
--查看当前会话的模式搜索顺序
show SEARCH_PATH;
--创建表、插入数据和查询表中数据
create table enmschm1.tt(id int8);
insert into enmschm1.tt values(946666);
select * from enmschm1.tt;
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




