openGauss數據庫管理實戰指南——基本常用操作總結

查看所有數據庫

查看所有表 \d

查看函數定義

查看所有用戶 select usename from pg_user;

1.數據庫創建管理

CREATE DATABASE test;

2.數據庫用戶創建管理

CREATE USER tom PASSWORD 'Root123456.';

3.表的創建及管理

3.1.創建表

CREATE TABLE test(ID INTEGER PRIMARY KEY, NAME TEXT);

3.2.數據的增刪改查

--增insert into test values (1,'xiaoming'),(2,'xiaohong'),,(3,'xiaoqiang');
--刪DELETE FROM test WHERE ID<2;--改UPDATE test SET ID = ID*2 WHERE ID=2;--查SELECT * FROM test LIMIT 1;

3.3.表的刪除

DROP TABLE test;
--創建基表,并插入數據。
CREATE TABLE base_tbl (a int PRIMARY KEY, b text DEFAULT 'Unspecified');
INSERT INTO base_tbl values (1, 'insertTable');
--創建視圖
REATE VIEW ro_view1 AS SELECT a, b FROM base_tbl;
--視圖插入、更新和刪除數據
INSERT INTO ro_view1 values (2, 'insertView');
UPDATE ro_view1 SET b = 'updateView' WHERE a = 1;
DELETE FROM ro_view1 WHERE a= 2;--創建check option視圖
CREATE VIEW ro_view2 AS SELECT a, b FROM base_tbl WHERE a > 10 WITH CHECK OPTION;
--插入、更新視圖不可見數據失敗
INSERT INTO ro_view2 values (5, 'insertView');
INSERT INTO base_tbl values (15, 'insertTable');
UPDATE ro_view2 SET a = 5 WHERE a = 15;

4.SQL語法實驗

4.1.DDL

定義數據庫:CREATE DATABASE、ALTER DATABASE、DROP DATABASE

定義模式:CREATE SCHEMA、ALTER SCHEMA、DROP SCHEMA

定義表空間:CREATE TABLESPACE、ALTER TABLESPACE、DROP TABLESPACE

定義表:CREATE TABLE、ALTER TABLE、DROP TABLE

定義分區表:CREATE TABLE PARTITION、ALTER TABLE PARTITION

定義索引:CREATE INDEX、DROP INDEX

定義存儲過程:CREATE PROCEDURE、ALTER PROCEDURE、DROP PROCEDURE

定義函數:CREATE FUNCTION、ALTER FUNCTION、DROPFUNCTION

定義視圖:CREATE VIEW、ALTER VIEW、DROP VIEW

4.2.DML

INSERT。

UPDATE。

SELECT。

DELETE\TRUNCATE。

COPY。

CREATE TABLE test(ID INTEGER PRIMARY KEY, NAME TEXT);
insert into test values (1,'xiaoming'),(2,'xiaohong'),,(3,'xiaoqiang');
COPY test TO '/home/omm/ds_ship_mode.dat'

LOCK。

CALL。

4.3.DCL

定義角色CREATE/ALTER/DROP ROLE

定義用戶CREATE/ALTER/DROP USER

授權GRANT

收回權限REVOKE

設置默認權限ALTER DEFAULT PRIVILEGES

關閉當前節點SHUTDOWN

5.創建和管理其他數據庫對象

5.1.schema

CREATE SCHEMA ds;
ALTER SCHEMA ds RENAME TO ds_new;
ALTER SCHEMA ds_new OWNER TO tom;
DROP SCHEMA ds_new;

5.2.索引

create schema tpcds;
CREATE TABLE tpcds.ship_mode_t1
(SM_SHIP_MODE_SK           INTEGER               NOT NULL,SM_SHIP_MODE_ID           CHAR(16)              NOT NULL,SM_TYPE                   CHAR(30)                      ,SM_CODE                   CHAR(10)                      ,SM_CARRIER                CHAR(20)                      ,SM_CONTRACT               CHAR(20)
) 
;
--在表tpcds.ship_mode_t1上的SM_SHIP_MODE_SK字段上創建普通的唯一索引。
CREATE UNIQUE INDEX ds_ship_mode_t1_index1 ON tpcds.ship_mode_t1(SM_SHIP_MODE_SK);
--在表tpcds.ship_mode_t1上的SM_SHIP_MODE_SK字段上創建指定B-tree索引。
CREATE INDEX ds_ship_mode_t1_index4 ON tpcds.ship_mode_t1 USING btree(SM_SHIP_MODE_SK);
--在表tpcds.ship_mode_t1上SM_CODE字段上創建表達式索引。
CREATE INDEX ds_ship_mode_t1_index2 ON tpcds.ship_mode_t1(SUBSTR(SM_CODE,1 ,4));
--設置索引不可用。
ALTER INDEX tpcds.ds_ship_mode_t1_index2 UNUSABLE;
--刪除一個現有的索引。
DROP INDEX tpcds.ds_ship_mode_t1_index2;
DROP TABLE tpcds.ship_mode_t1;
DROP SCHEMA tpcds;

5.3.視圖

--創建基表,并插入數據。
CREATE TABLE base_tbl (a int PRIMARY KEY, b text DEFAULT 'Unspecified');
INSERT INTO base_tbl values (1, 'insertTable');
--創建視圖
REATE VIEW ro_view1 AS SELECT a, b FROM base_tbl;
--視圖插入、更新和刪除數據
INSERT INTO ro_view1 values (2, 'insertView');
UPDATE ro_view1 SET b = 'updateView' WHERE a = 1;
DELETE FROM ro_view1 WHERE a= 2;--創建check option視圖
CREATE VIEW ro_view2 AS SELECT a, b FROM base_tbl WHERE a > 10 WITH CHECK OPTION;
--插入、更新視圖不可見數據失敗
INSERT INTO ro_view2 values (5, 'insertView');
INSERT INTO base_tbl values (15, 'insertTable');
UPDATE ro_view2 SET a = 5 WHERE a = 15;

5.4.存儲過程

CREATE PROCEDURE proc_insert_sql()
AS BEGIN insert into test values (1,'xiaoming'),(2,'xiaohong'),(3,'xiaoqiang');
END
/
CALL proc_insert_sql();
SELECT * FROM test;
DROP PROCEDURE proc_insert_sql;

5.5.函數

CREATE FUNCTION func_add_sql(num1 integer, num2 integer) RETURN integer
AS BEGIN 
RETURN num1 + num2;
END
/
SELECT func_add_sql(4,2);
DROP FUNCTION func_add_sql;

6.用戶權限控制

6.1.角色

CREATE ROLE paul IDENTIFIED BY 'Root123456.';
ALTER ROLE paul IDENTIFIED BY 'Root123456&' REPLACE 'Root123456.';

6.2.權限

CREATE USER jack PASSWORD 'Root123456.';
create schema tpcds;
ALTER DEFAULT PRIVILEGES IN SCHEMA tpcds GRANT INSERT ON TABLES TO jack;

6.3.授權

GRANT ALL PRIVILEGES TO jack;
GRANT jack TO paul WITH ADMIN OPTION;

6.4.權限回收

REVOKE paul FROM jack;
REVOKE ALL PRIVILEGES FROM jack;
DROP ROLE paul;
DROP OWNED BY jack;
DROP USER jack;

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/90921.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/90921.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/90921.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

智慧公安信息化建設解決方案PPT(63頁)

智慧公安的定義與職能 智慧公安是利用現代信息技術提升公安工作效率與服務質量的新模式&#xff0c;涵蓋刑事偵查、治安管理、交通管理等多方面職能&#xff0c;致力于保障社會安全與秩序。 智慧公安信息化建設的重要性 信息化建設是智慧公安發展的核心&#xff0c;通過數據…

k8s存儲入門

目錄 一、 Volume 的概念 二、 Volume 的類型 三、 通過 emptyDir 共享數據 1. EmptyDir 特性 2. EmptyDir 共享數據 四&#xff1a;使用 HostPath 掛載宿主機文件 1. HostPath 特性 2. 掛載宿主機時區文件 五、 掛載 NFS 至容器 1. 前置準備&#xff08;所有 K8s 節…

基于 Flutter 的開源文本 TTS 朗讀器(支持 Windows/macOS/Android)

界面特性 基于 Flutter 的文本 TTS 朗讀器支持 Windows、macOS、AndroidTTS 源&#xff1a;OpenAI TTS、Microsoft TTS支持設置代理支持設置應用主題支持倍速支持書簽支持點擊指定地方朗讀支持 txt、epub、貼粘文本支持從上次地方開始朗讀 源代碼https://github.com/xchenhao/t…

深入理解大語言模型:從核心技術到極簡實現

零基礎的讀者建議先看《零基礎理解大語言模型&#xff1a;從生活例子到代碼實現》&#xff0c;本教程的完整代碼可以在GitHub上找到&#xff0c;如果你有任何問題或建議&#xff0c;歡迎交流討論。 引言 自ChatGPT橫空出世以來&#xff0c;大語言模型&#xff08;Large Langua…

7月13日日記

看來每天寫一篇日記對我來說還是一個不小的挑戰。主要是和惰性做抗爭吧。但是這個東西說實話也沒有什么難度&#xff0c;也并不占用時間&#xff0c;一篇日記大概十幾分鐘就可以寫完。可能更多的是健忘。忘了每天有一個這樣的小任務。忘了前幾天日記寫沒寫了&#xff0c;三下鄉…

《Stata面板數據分析:數據檢驗、回歸模型與診斷技術 - 以NLSW工資研究(公開數據)為例》

本教程旨在全面介紹使用 Stata 進行面板數據分析的方法和技巧。我們將以美國國家縱向調查(NLSW)的數據為例,系統地探討從基礎 OLS 回歸到高級固定效應模型的分析過程。 NLSW 數據集是公開的,可以免費獲取,這為讀者提供了實踐和復現的機會。 通過這個教程,您將掌握使用 …

【VSCode+LaTeX】科研寫作環境搭建

文章目錄0 引言為什么選擇LaTeXVSCode&#xff1f;為什么不選擇Overleaf&#xff1f;1 TeXLive安裝1.1 下載安裝包1.2 運行安裝程序1.3 通過鏡像安裝2 VSCode安裝與配置2.1 下載VSCode安裝包2.2 安裝VSCode2.3 安裝中文語言包2.4 配置LaTeX核心擴展2.5 加載TeX模版文件2.6 編譯…

Surfer軟件入門與等值線繪制實操教程

本文還有配套的精品資源&#xff0c;點擊獲取 簡介&#xff1a;本教程將指導初學者如何使用Surfer軟件進行地質繪圖&#xff0c;重點在于等值線的繪制技巧和提升圖形質量。內容涵蓋Surfer界面介紹、數據導入、等值線繪制方法、樣式設置、地圖增強技術以及輸出保存方法&#…

攻防世界——Web題 very_easy_sql

目錄 payload1 payload2 payload3 看到了題目是sql就猜測是sql注入和萬能密碼了&#xff0c;但怎么試貌似都沒有反應&#xff0c;看源代碼發現了use.php 訪問use.php頁面 可以猜測這里是SSRF&#xff0c;可以訪問到我們本不能訪問的界面&#xff0c;比如&#xff1a;服務器…

基于 SpringBoot 的 REST API 與 RPC 調用的統一封裝

一、為何需要統一封裝&#xff1f; 在討論統一封裝之前&#xff0c;我們先看看 REST 和 RPC 各自的適用場景。 REST API 基于 HTTP 協議&#xff0c;采用 JSON 作為數據交換格式&#xff0c;可讀性好且跨語言&#xff0c;非常適合對外提供服務。 RPC&#xff08;如 Dubbo、gRPC…

【SpringBoot】 整合MyBatis+Postgresql

MyBatis 是一個輕量級的持久化框架&#xff0c;用于簡化數據庫訪問和操作。它通過將 SQL 語句與 Java 代碼分離&#xff0c;允許開發者使用 XML 或注解來配置 SQL 語句&#xff0c;并將結果映射為 Java 對象。MyBatis 提供了靈活的 SQL 控制&#xff0c;適合需要精細控制 SQL 的…

無縫銜接直播流體驗

文章目錄前言&#x1f9e0; 1. 為什么能“無縫銜接”&#xff1f;&#x1f9f0; 2. Flutter 實現方案? 總體策略&#x1f3af; 核心技術點? a. 使用全局播放器管理器&#xff08;單例模式&#xff09;? b. 廣場頁中的直播卡片使用播放器? c. 詳情頁復用控制器? d. 頁面切換…

[論文閱讀] 軟件工程 | 首個德語軟件工程情感分析黃金標準數據集:構建與價值解析

首個德語軟件工程情感分析黃金標準數據集&#xff1a;構建與價值解析 論文標題&#xff1a;A German Gold-Standard Dataset for Sentiment Analysis in Software EngineeringarXiv:2507.07325 A German Gold-Standard Dataset for Sentiment Analysis in Software Engineering…

PyTorch編程實踐:一文就入門的上手開發!

引言 PyTorch作為當今深度學習領域最流行的框架之一&#xff0c;以其動態計算圖、直觀的Python接口和強大的GPU加速能力&#xff0c;贏得了眾多研究人員和工程師的青睞。本文將深入探討PyTorch的編程實踐&#xff0c;從基礎概念到高級應用&#xff0c;幫助讀者全面掌握這一強大…

關于學習docker中遇到的問題

Cannot connect to the Docker daemon at unix:///home/pc/.docker/desktop/docker.sock. Is the docker daemon running?如何配置新的路徑 #運行這條命令&#xff0c;查看docker狀態 sudo systemctl status docker如圖所示表示監聽路徑不對&#xff0c;因此修改路徑即可&…

無法打開windows安全中心解決方案

系統還原或重置&#xff1a;如果以上方法均無效&#xff0c;可嘗試系統還原&#xff0c;使用之前創建的還原點恢復系統。或在設置中選擇 “系統> 恢復 > 重置此電腦”&#xff0c;選擇 “保留我的文件” 以避免數據丟失。創建新用戶賬戶&#xff1a;按下 Win I 打開設置…

復習筆記 33

緒論 《幻術》 張葉蕾 我該怎么承認&#xff0c; 一切都是幻境。 函數的基本性質和無窮小量及其階的比較 我感覺強化課我要跟上的話&#xff0c;我需要把基礎&#xff0c;強化的講義&#xff0c;還有練習冊上面的所有題都刷爛。不然我感覺自己考 140 完全就是癡人說夢。搞笑呢。…

算法學習筆記:12.快速排序 ——從原理到實戰,涵蓋 LeetCode 與考研 408 例題

快速排序是計算機科學中最經典的排序算法之一&#xff0c;由 Tony Hoare 在 1960 年提出。它憑借平均時間復雜度 O (nlogn)、原地排序&#xff08;空間復雜度 O (logn)&#xff0c;主要來自遞歸棧&#xff09;以及良好的實際性能&#xff0c;成為工業界處理大規模數據排序的首選…

unity 有打擊感的圖片,怎么做動畫,可以表現出良好的打擊效果

完整實現腳本:using UnityEngine; using UnityEngine.UI; using System.Collections;[RequireComponent(typeof(Image))] public class HitEffectController : MonoBehaviour {[Header("基礎設置")]public float hitDuration 0.5f; // 打擊效果總時長[Header("…

cuda編程筆記(7)--多GPU上的CUDA

零拷貝內存 在流中&#xff0c;我們介紹了cudaHostAlloc這個函數&#xff0c;它有一些標志&#xff0c;其中cudaHostAllocMapped允許內存映射到設備&#xff0c;也即GPU可以直接訪問主機上的內存&#xff0c;不用額外再給設備指針分配內存 通過下面的操作&#xff0c;即可讓設…