学习地址

https://www.modb.pro/course/133

学习目标

学习 openGauss 创建模式、修改模式属性和删除模式

模式是一组数据库对象的集合,主要用于控制对数据库对象的访问

课后作业

1.创建一个名为 tpcds 的模式

SQL文本:

create schema tpcds;

\dn tpcds

omm=# create schema tpcds;

CREATE SCHEMA

omm=# \dn tpcds

List of schemas

Name | Owner

-------+-------

tpcds | omm

(1 row)

omm-#

2.创建一个用户 tim, 并将 tpcds 的 owner 修改为 tim,且修改 owner 前后分别使用\dn+查看模式信息

SQL文本:

create user tim password '_*';

\dn+

alter schema tpcds owner to tim;

\dn+

omm=# create user tim password '_*';

omm=# CREATE ROLE

omm=# \dn+

List of schemas

Name | Owner | Access privileges | Description

-------------+-------+-------------------+----------------------------------

cstore | omm | | reserved schema for DELTA tables

dbe_perf | omm | | dbe_perf schema

pkg_service | omm | | pkg_service schema

public | omm | omm=UC/omm +| standard public schema

| | =U/omm |

schema2 | omm | |

snapshot | omm | | snapshot schema

tim | tim | |

tpcds | omm | |

(8 rows)

omm=# alter schema tpcds owner to tim;

ALTER SCHEMA

omm=# \dn+

List of schemas

Name | Owner | Access privileges | Description

-------------+-------+-------------------+----------------------------------

cstore | omm | | reserved schema for DELTA tables

dbe_perf | omm | | dbe_perf schema

pkg_service | omm | | pkg_service schema

public | omm | omm=UC/omm +| standard public schema

| | =U/omm |

schema2 | omm | |

snapshot | omm | | snapshot schema

tim | tim | |

tpcds | tim | |

(8 rows)

omm=#

3.重命名 tpcds 为 tpcds1

SQL文本:

alter schema tpcds rename to tpcds1;

\dn+

omm=# alter schema tpcds rename to tpcds1;

ALTER SCHEMA

omm=# \dn+

List of schemas

Name | Owner | Access privileges | Description

-------------+-------+-------------------+----------------------------------

cstore | omm | | reserved schema for DELTA tables

dbe_perf | omm | | dbe_perf schema

pkg_service | omm | | pkg_service schema

public | omm | omm=UC/omm +| standard public schema

| | =U/omm |

schema2 | omm | |

snapshot | omm | | snapshot schema

tim | tim | |

tpcds1 | tim | |

(8 rows)

omm=#

4.在模式 tpcds1 中建表 customer、插入记录和查询记录

SQL文本:

建表

create table tpcds1.customer

( c_customer_sk integer,

c_customer_id char(5),

c_first_name char(6),

c_last_name char(8)

);

插入记录

INSERT INTO tpcds1.customer (c_customer_sk, c_customer_id, c_first_name,c_last_name) VALUES

(6885, 1, 'Joes', 'Hunter'),

(4321, 2, 'Lily','Carter'),

(9527, 3, 'James', 'Cook'),

(9500, 4, 'Lucy', 'Baker');

查询记录

select * from tpcds1.customer;

omm=# create table tpcds1.customer

omm-# ( c_customer_sk integer,

omm(# c_customer_id char(5),

omm(# c_first_name char(6),

omm(# c_last_name char(8)

omm(# );

CREATE TABLE

omm=# INSERT INTO tpcds1.customer (c_customer_sk, c_customer_id, c_first_name,c_last_name) VALUES

omm-# (6885, 1, 'Joes', 'Hunter'),

omm-# (4321, 2, 'Lily','Carter'),

omm-# (9527, 3, 'James', 'Cook'),

omm-# (9500, 4, 'Lucy', 'Baker');

INSERT 0 4

omm=# select * from tpcds1.customer;

c_customer_sk | c_customer_id | c_first_name | c_last_name

---------------+---------------+--------------+-------------

6885 | 1 | Joes | Hunter

4321 | 2 | Lily | Carter

9527 | 3 | James | Cook

9500 | 4 | Lucy | Baker

(4 rows)

omm=# \dt customer

List of relations

Schema | Name | Type | Owner | Storage

--------+----------+-------+-------+----------------------------------

tpcds1 | customer | table | omm | {orientation=row,compression=no}

(1 row)

omm=#

5.删除模式 tpcds1

SQL文本: drop schema tpcds1; drop schema tpcds1 cascade; \dn+

omm=# drop schema tpcds1;

ERROR: cannot drop schema tpcds1 because other objects depend on it

DETAIL: table customer depends on schema tpcds1

HINT: Use DROP ... CASCADE to drop the dependent objects too.

omm=# drop schema tpcds1 cascade;

NOTICE: drop cascades to table customer

DROP SCHEMA

omm=# \dn+

List of schemas

Name | Owner | Access privileges | Description

-------------+-------+-------------------+----------------------------------

cstore | omm | | reserved schema for DELTA tables

dbe_perf | omm | | dbe_perf schema

pkg_service | omm | | pkg_service schema

public | omm | omm=UC/omm +| standard public schema

| | =U/omm |

schema2 | omm | |

snapshot | omm | | snapshot schema

tim | tim | |

(7 rows)

omm=#

openGauss每日一练第6天的更多相关文章

  1. CSS3每日一练之内容处理-嵌套编号

    出处:http://www.w3cfuns.com/thread-5592229-1-17.html 1.大标题一   1.子标题   2.子标题   3.子标题2.大标题二   1.子标题   2. ...

  2. CSS3每日一练之选择器-结构性伪类选择器

    <!DOCTYPE HTML> <html> <head> <meta charset="gb2312"> <title> ...

  3. HTML5每日一练之progress标签的应用

    progress标签:从名字上来看,估计大家也能猜到这个标签是什么标签了,没错,他是一个进度条.在HTML5中我们终于可以不用模拟了. <progress id="W3Cfuns_pr ...

  4. HTML5每日一练之figure新标签的应用

    igure元素是一种元素的组合,可带有标题(可选).figure标签用来表示网页上一块独立的内容,将其从网页上移除后不会对网页上的其他内容产生影响.figure所表示的内容可以是图片.统计图或代码示例 ...

  5. HTML5每日一练之details展开收缩标签的应用

    details标签的出现,为我们带来了更好的用户体验,不必为这种收缩展开的效果再编写JS来实现.注:目前仅Chrome支持此标签. details有一个新增加的子标签——summary,当鼠标点击su ...

  6. 每日一小练——Eratosthenes 筛选法

    上得厅堂.下得厨房,写得代码.翻得围墙,欢迎来到睿不可挡的每日一小练! 题目:Eratosthenes筛选法 内容: 求质数是一个非常普遍的问题,通常不外乎用数去除.除到不尽时,给定的数就是质数.可是 ...

  7. 每日一小练——高速Fibonacci数算法

    上得厅堂,下得厨房,写得代码,翻得围墙,欢迎来到睿不可挡的每日一小练! 题目:高速Fibonacci数算法 内容:先说说Fibonacci数列,它的定义是数列:f1,f2....fn有例如以下规律: ...

  8. linux每日一练:Enable multithreading to use std::thread: Operation not permitted问题解决

    linux每日一练:Enable multithreading to use std::thread: Operation not permitted问题解决 在linux在需要使用c++11时会遇到 ...

  9. linux命令每日一练:find与rm实现查找并删除目录或文件

    linux命令每日一练 linux中find与rm实现查找并删除目录或文件 linux 下用find命令查找文件,rm命令删除文件. 删除指定目录下指定文件 find 要查找的目录名 -name .s ...

  10. WindowsAPI每日一练(2) 使用应用程序句柄

    WindowsAPI每日一练系列 :https://www.cnblogs.com/LexMoon/category/1246238.html WindowsAPI每日一练() WinMain Win ...

随机推荐

  1. 【Azure Redis】PHPRedis遇见SSL Connection Timeout问题

    问题描述 PHP Redis客户端遇见使用SSL Connection timeout,遇见问题后,切换回去Non-SSL没有出现问题.但是切换回SSL后,还是偶尔遇见Connection timeo ...

  2. 【Azure 服务总线】向服务总线发送消息时,返回错误代码Error code : 50009

    问题描述 使用Java SDK向服务总线(Service Bus)发送消息时,返回这个错误: org.springframework.jms.UncategorizedJmsException: Un ...

  3. 二: sql模式(sql_mode)

    # sql_mode 1 介绍 sql_mode 会影响 MySQL支持的SQL语法以及它执行的数据验证检查.通过设置sql_mode,可以完成不同严格程度 的数据校验,有效地保障数据准确性. MyS ...

  4. RocketMQ(2) 消息的生产和存储

    ## 一 : 消息的生产 1. 消息的生产过程 Producer在发送消息时可以将消息写入到指定topic的某Broker中的某Queue中,其经历了如下过程: Producer发送消息之前,会先向N ...

  5. Java 包装类的使用(自动装箱+自动拆箱)+Vector

    1 package com.bytezreo.ut; 2 3 import java.util.Scanner; 4 import java.util.Vector; 5 6 /** 7 * 8 * ...

  6. Java //数组的反转

    1 //数组的反转 2 //方式一 3 System.out.println("数组的反转"); 4 5 // for(int i = 0; i <arr.length/2; ...

  7. 牛客“迎新春,过大年”多校程序设计竞赛A题

    题目描述: 这里有个小trick 当时也看到数据范围的问题了 \(n是1e6 \quad \sum_{i=1}^na[i]<=5e7\) 我们考虑不同的数\(1 \quad 2 \quad .. ...

  8. Git修改最近一次提交的日志信息

    一.问题由来 当前自己所在的项目组中,每次发完一个版本后,就需要创建个人新版本的git提交凭证,其实就是系统自动 生成的一串编码,如果没有这个凭证,代码是提交不了的,这是公司制定的开发规范之一.这两天 ...

  9. python parser 实例解析

    一 parser: 该模块为Python的内部解析器和字节码编译器提供了一个接口.该接口的主要目的是允许Python代码编辑Python表达式的分析树并从中创建可执行代码. 这比试图将任意Python ...

  10. pandas DataFrame内存优化技巧:让数据处理更高效

    Pandas无疑是我们数据分析时一个不可或缺的工具,它以其强大的数据处理能力.灵活的数据结构以及易于上手的API赢得了广大数据分析师和机器学习工程师的喜爱. 然而,随着数据量的不断增长,如何高效.合理 ...