第13天 | openGauss逻辑结构:表管理1

接着昨天继续学习openGauss,今天是第13天了。今天学习内容是学习openGauss表的创建、搜索路径和访问方法。

老规矩,先登陆墨天轮为我准备的实训实验室

复制代码
root@modb:~# su - omm
omm@modb:~$ gsql -r
作业要求
1.创建一个表(默认,不指定模式),查看该表在那个模式下
复制代码
omm=# create table testtable(col varchar(100));
omm=# CREATE TABLE
omm=# insert into testtable values('Hello from testtable!');
INSERT 0 1

查看在哪个模式下

复制代码
omm=# select table_catalog,table_schema,table_name,table_type from information_schema.tables  where  table_name = 'testtable';
 table_catalog | table_schema | table_name | table_type 
---------------+--------------+------------+------------
 omm           | public       | testtable  | BASE TABLE
(1 row)

可以看见默认情况下是在 public模式下。

2.使用一个用户连接到enmdb数据库,测试该用户可以访问不同模式中的表

创建表空间、数据库、用户、并赋予权限。

复制代码
omm=# CREATE TABLESPACE enmtbs RELATIVE LOCATION 'tablespace/enmtbs1';
CREATE TABLESPACE
omm=# CREATE DATABASE enmdb WITH TABLESPACE = enmtbs;
CREATE DATABASE
omm=# CREATE USER user1 IDENTIFIED BY 'kunpeng@1234';
NOTICE:  The encrypted password contains MD5 ciphertext, which is not secure.
CREATE ROLE
omm=# ALTER USER user1  SYSADMIN;
ALTER ROLE

--以数据库用户user1的身份,连接到刚刚创建的数据库enmdb,并创建模式enmschm1和建表插入数据

复制代码
gsql -d enmdb   -U user1   -W kunpeng@1234 -r
enmdb=> create schema enmschm1;
CREATE SCHEMA
enmdb=> create table testtable(col1  char(100));
CREATE TABLE
enmdb=> insert into testtable values('Hello from testtable IN SCHEMA enmschm1!');
INSERT 0 1

3.在会话级设置模式搜索路径为:模式enmschm1,使用SchemaName.TableName的表标识方法访问表(创建表、插入数据和查询表中数据)

更改模式搜索路径为enmschm1

复制代码
enmdb=> SET SEARCH_PATH TO enmschm1;
SET
enmdb=> show SEARCH_PATH;
 search_path 
-------------
 enmschm1

按作业要求查询数据

复制代码
enmdb=> select * from enmschm1.testtable;
(1 row)

enmdb=>                                                  col1                                                 
------------------------------------------------------------------------------------------------------
 Hello from testtable IN SCHEMA enmschm1!   
相关推荐
老邓计算机毕设18 分钟前
SSM智慧社区家政服务系统80q7o(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·ssm 框架
松涛和鸣1 小时前
72、IMX6ULL驱动实战:设备树(DTS/DTB)+ GPIO子系统+Platform总线
linux·服务器·arm开发·数据库·单片机
likangbinlxa2 小时前
【Oracle11g SQL详解】UPDATE 和 DELETE 操作的正确使用
数据库·sql
r i c k2 小时前
数据库系统学习笔记
数据库·笔记·学习
野犬寒鸦2 小时前
从零起步学习JVM || 第一章:类加载器与双亲委派机制模型详解
java·jvm·数据库·后端·学习
IvorySQL3 小时前
PostgreSQL 分区表的 ALTER TABLE 语句执行机制解析
数据库·postgresql·开源
·云扬·3 小时前
MySQL 8.0 Redo Log 归档与禁用实战指南
android·数据库·mysql
IT邦德3 小时前
Oracle 26ai DataGuard 搭建(RAC到单机)
数据库·oracle
惊讶的猫4 小时前
redis分片集群
数据库·redis·缓存·分片集群·海量数据存储·高并发写
不爱缺氧i4 小时前
完全卸载MariaDB
数据库·mariadb