乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      OushuDB 數(shù)據(jù)庫基本用法(中)

       北漂二號(hào) 2021-11-23

      1、概述

      一個(gè)OushuDB集群管理著多個(gè)數(shù)據(jù)庫(database),每個(gè)數(shù)據(jù)庫又包含多個(gè)模式(schema), 一個(gè)模式包含多個(gè)對(duì)象(表,視圖,函數(shù)等),所以這些對(duì)象之間的層級(jí)結(jié)構(gòu)為:

      database -> schema -> (tables, functions, views)

      每個(gè)模式,表,視圖,函數(shù)等只屬于一個(gè)database。本章主要介紹每一種對(duì)象的常見用法。具體使用語法可以參見參考手冊。

      2、數(shù)據(jù)庫

      OushuDB在初始化完成后,會(huì)默認(rèn)生成三個(gè)數(shù)據(jù)庫,可以使用l命令查看,或者查看

      postgres=# l

      List of databases

      Name | Owner | Encoding | Access privileges

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

      postgres | ChangLei | UTF8 |

      template0 | ChangLei | UTF8 |

      template1 | ChangLei | UTF8 |

      (4 rows)

      其中template0和template1為模版數(shù)據(jù)庫。template1為系統(tǒng)默認(rèn)用來創(chuàng)建新數(shù)據(jù)庫的模版數(shù)據(jù)庫,用戶可以修改。template0默認(rèn)不接受連接,所以不可更改,目的是始終保存一個(gè)干凈的模版數(shù)據(jù)庫。

      創(chuàng)建一個(gè)數(shù)據(jù)庫的時(shí)候,可以指定一個(gè)數(shù)據(jù)庫的模版數(shù)據(jù)庫。缺省為template1,現(xiàn)在OushuDB只支持以template0,template1和postgres數(shù)據(jù)庫為模版數(shù)據(jù)庫。例如:

      postgres=# create database tdb; # 創(chuàng)建一個(gè)新數(shù)據(jù)庫,默認(rèn)以template0為模版

      CREATE DATABASE

      postgres=#c postgres # 連接postgres

      postgres=# create table test(i int); # 在postgres數(shù)據(jù)庫中創(chuàng)建表test

      CREATE TABLE

      postgres=# create table test_orc(i int) with (appendonly=true, orientation=orc); # 在postgres數(shù)據(jù)庫中創(chuàng)建ORC格式表

      CREATE TABLE

      postgres=# create database dbnew template postgres;

      CREATE DATABASE

      postgres=#c dbnew # 連接dbnew

      可以看到,dbnew中現(xiàn)在包含test表

      dbnew=#d

      List of relations

      Schema | Name | Type | Owner | Storage

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

      public | test | table | ChangLei | append only

      (1 row)

      3、模式

      一個(gè)數(shù)據(jù)庫包含多個(gè)模式(schema),而一個(gè)模式可以包含多種命名對(duì)象,比如表,數(shù)據(jù)類型,函數(shù),操作符等。同一個(gè)對(duì)象名字可以用在不同的模式中而不產(chǎn)生沖突。比如schema1中可以包含表test,schema2中也可以同時(shí)包含名字為test的表。從這個(gè)意義上,模式很像一個(gè)命名空間(namespace)。

      當(dāng)創(chuàng)建一個(gè)對(duì)象時(shí),默認(rèn)被放置在public模式中。下面是系統(tǒng)默認(rèn)創(chuàng)建的schema。

      template1=# dn

      List of schemas

      Name | Owner

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

      hawq_toolkit | ChangLei

      information_schema | ChangLei

      pg_aoseg | ChangLei

      pg_bitmapindex | ChangLei

      pg_catalog | ChangLei

      pg_toast | ChangLei

      public | ChangLei

      (7 rows)

      通常在這樣幾個(gè)場景下,用戶需要使用模式:

      允許多個(gè)用戶同時(shí)使用一個(gè)數(shù)據(jù)庫,而不產(chǎn)生名字沖突。

      把數(shù)據(jù)庫對(duì)象組織成多個(gè)schema,好像是多個(gè)命名空間一樣

      第三方應(yīng)用可以把它們的對(duì)象放到一個(gè)單獨(dú)的schema中,而不和其他對(duì)象產(chǎn)生從圖。

      注意:schema不可以嵌套,也就是說,schema中不可以再包含schema。

      下面是創(chuàng)建schema的例子。

      create schema myschema;

      創(chuàng)建或者存取一個(gè)schema中的對(duì)象,可以使用{schema}.{object}形式,例如:

      create table myschema.test(i int);

      select * from myschema.test;

      刪除一個(gè)空的schema,可以使用:

      drop schema myschame;

      刪除不空的schema,可以使用cascade關(guān)鍵詞:

      drop schema myschema cascade;

      使用{schema}.{object}形式,通常用起來不是很方便??梢酝ㄟ^設(shè)置schema搜索路徑來簡化?!盨HOW search_path”命令可以給出當(dāng)前的schema搜索路徑?!盨ET search_path TO schema-name1, schema-name2”可以設(shè)置schema搜索路徑。例如:

      postgres=# show search_path;

      search_path

      ----------------

      "$user",public

      (1 row)

      postgres=# create schema myschema;

      CREATE SCHEMA

      postgres=# set search_path = public, myschema;

      SET

      postgres=# show search_path;

      search_path

      ------------------

      public, myschema

      (1 row)

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章 更多