達夢模式物件的常規管理

2021-09-29 08:39:41 字數 1520 閱讀 4701

達夢模式物件的常規管理,均參照官方文件。

使用者的模式(schema)指的是使用者賬號擁有的物件集,在概念上可以將其看作是包含表、檢視、索引和許可權定義的物件。在dm中,乙個使用者可以建立多個模式,乙個模式中的物件(表、檢視等)可以被多個使用者使用。模式不是嚴格分離的,乙個使用者可以訪問他所連線的資料庫中有許可權訪問的任意模式中的物件。

系統為每乙個使用者自動建立了乙個與使用者名稱同名的模式作為其預設模式,使用者還可以使用模式定義語句建立其它模式(不清楚使用者的預設模式可不可以修改,沒找到相關的命令。)。

dm模式主要包含以下的模式物件:表、檢視、索引、序列、儲存過程/函式、包、類、同義詞、觸發器、全文索引、外部鏈結。在引用模式物件的時候,一般要在模式物件名前面加上模式名,如:[模式名].模式物件名。但在當前模式和要引用的模式物件所屬的模式名相同時,可以省略模式名(查詢當前使用者可以使用select user;語句,查詢當前模式可以用什麼語句呢?)。

模式物件之外的其它物件統一稱為非模式物件,主要有:使用者、角色、許可權、表空間。

在dm資料庫中,使用create schema語句就可以建立乙個空的模式物件(如:create schema sysdba1 [authorization sysdba]),也可以在建立模式時,同時建立多個模式物件(如:create schema sysdba1 [authorization sysdba] create table test(a int,b varchar) create view vi as select a from test;)。

要重新命名乙個模式物件,那麼這個模式物件必須在指定的模式裡面。可以採用以下方式來重新命名模式物件:刪除原有的模式物件,重新建立(這種方式,所有基於原模式物件的許可權都將失效,在模式物件重建之後,基於原物件的許可權和角色必須重新授予);使用alter...rename語句(table)(這種方式,所有基於原模式物件的許可權將轉移到重新命名後的模式物件上,不需要重新授權)。重新命名之後的影響有:所有基於重新命名模式物件的檢視和dmsql語句塊都將失效,在使用之前需要重新編譯;所有基於重新命名模式物件的同義詞在使用的時候都會報錯。

使用者可以指定乙個約束是啟用(enable)或禁用(disable)狀態,或建立、刪除乙個約束。語法:alter table tab_name enable|disable|add|drop constraint 約束名; 在下面的情況下,從效能的角度考慮,可以暫時將完整性約束禁用:匯入大量的資料到一張表;做批處理操作並對一張表做大規模修改時;匯入匯出一張表。

當使用者使用unique或primary key約束時,系統會建立對應的索引,當這個約束被刪除或被禁用時,索引就會被刪除。若有外來鍵引用unique或primary key列時,使用者不能禁用unique或primary key約束。

使用者可以在系統表sysobjects和syscons中查詢約束的資訊,也可以使用dbms_meta.get_ddl(『constraint』,』cons_name』,』sch_name』);系統包獲取。

在實際應用中,許多模式物件需要引用其它的物件。乙個模式物件引用了別的物件稱為依賴物件,被引用的物件稱為被依賴物件。dm資料庫在物件被呼叫的時候自動編譯,確保物件有效。

達夢資料庫的模式物件管理(一)

模式是所有物件的集合 表 檢視 索引 序列 同義詞 自增列 建立使用者的時候會預設的建立乙個同名的模式 1.1如何規劃表 命名 字母開頭 a z,0 9,資料型別 int char varchar date clob blob number等 儲存位置 自己規劃的表空間 5大約束 非空約束,唯一約束...

達夢索引管理

達夢索引管理,全部參照官方文件。索引是與表相關的可選的結構 聚簇索引除外 它能使對應於表的sql語句執行的更快。dm提供了幾種型別的索引。聚集索引 每乙個普通表有且僅有乙個聚集索引 唯一索引 索引資料根據索引鍵唯一 函式索引 包含函式 表示式的預先計算的值 位圖索引 對低基數的列建立位圖索引 位圖連...

達夢資料庫常規資料型別

1 數值資料型別 1.numeric型別 語法 numeric 精度 標度 功能 numeric 資料型別用於儲存零 正負定點數。其中 精度是乙個無符號整數,定義了總的數字數,精度範圍是 1 至 38,標度定義了小數點右邊的數字位數,定義時如省略精度,則預設是 16。如省略標度,則預設是 0。乙個數...