資料庫常用概念理解

2021-10-08 11:50:53 字數 1843 閱讀 6432

分割槽這個概念主要適用在大資料量時,比如說,一張表的資料量非常大,那麼它的查詢速度會比較慢,而且這樣的表或者索引很難維護,那麼,這個時候就適合對錶進行分割槽。

分割槽,顧名思義,就是劃分區域,將表劃分成幾個子表,劃分後的子表合起來就是原來那張表。

那根據一張表的劃分方式的不同,就把分割槽分為了兩種,水平分割槽和垂直分割槽。

水平分割槽就是劃分行,表中的每一行資料根據劃分策略儲存在不同的分割槽,在執行查詢操作時,可以在分區內進行。

垂直分割槽就是劃分列,一條記錄中有多個字段,可以把經常一起做查詢的字段劃分在同乙個分割槽。

首先,檢視(view)並不是圖,事實上,檢視是表,還是虛表,也是邏輯表。也就是說,這個表在空間裡並不包含資料的。

建立檢視首先要有基表,基表也就是平時大家見到的表,裡面儲存著很多資料。這是因為檢視是依賴於基表而存在的。如果基表不存在了,檢視也就失去了意義。

那既然檢視裡面都沒有實際的資料,為什麼還要使用檢視呢?

其實是為了資料安全,以及許可權管理。一張表裡存放著的字段有些只能展示給管理員看,普通使用者不能檢視。這種情況下沒有必要對錶進行劃分,或者建立新的表給不同的使用者。通過不同的檢視實現表的字段組合,這樣可以大幅度的節省空間,也不會破壞掉原本的資料庫邏輯結構。

說起序列,這個東西有些資料庫支援,有些資料庫不支援。那麼序列到底是什麼東西呢?

在dm資料庫中,序列是資料庫實體中的一種。通過序列,多個使用者可以產生和使用一組不重複的有序整數值。

這樣的不重複的有序整數值有什麼作用呢?比如說可以自動生成訂單編號

這裡必須要提一句,序列不等於自增列,這兩者是有本質區別的。序列是資料庫實體物件,自增列雖然可以通過設定種子、增量來達到自動設定該列的值,但是屬於資料庫表的約束範疇。而且,乙個表只能設定乙個自增列,設定後不能對該列進行修改。而序列可以應用在多個列,甚至是多個表(待驗證…),並且在dm中可以通過cycle關鍵字設定迴圈序列。

索引是乙個與表相關的結構,可以通過索引來提高表的查詢速度。

但是索引是占用磁碟空間的,所以在磁碟空間超負荷的時候,再新增索引一般很難提公升查詢速度。

那麼,索引是如何來提高資料查詢速度的呢?

資料儲存在磁碟上都是無序的,當執行select語句時,根據select查詢條件,會在磁碟上一條一條的去匹配,直到遍歷完整張表,找到所有符合查詢條件的資料。在資料量非常大的時候,比如說十億條資料,這樣的查詢是行不通的。這時候就需要索引。

聚集索引是一種按帶有順序的索引,如果你為表中的乙個欄位建了聚集索引,那麼資料就會按照該欄位進行排序。就像字典一樣,如果你要查詢「張」這個字,那麼它的首字母是z,那麼在查詢的時候,是肯定在字典的最後面一部分查詢而不會出現在前面或者中間。所以一張表只有乙個聚集索引,這是因為一本字典不會出現兩種排列方式。

設定主鍵的時候缺省會為主鍵生成聚集索引。

當然也有非聚集的索引,就是無序的。以及各種索引,什麼唯一索引、位圖索引,等等等等。這些索引在建立好後,包含了當前索引字段以及主鍵的資料。在執行select時,分為兩步操作。

第一步,根據當前索引字段快速找到對應的主鍵。

第二步,根據主鍵值進行回表操作,根據聚集索引提取到所需要的字段中的所有資料。

如果幾個字段經常同時被查詢,可以為其建立聯合索引,可以大幅度提高查詢速度。

觸發器(trigger)的定義為,當某些與資料庫有關的事件發生時,資料應該採取的操作。通俗的來講,觸發器就是一段會自動執行的sql**,它的作用是保障資料庫的事務規則。

觸發器可以分為表觸發器、事件觸發器和時間觸發器。

表觸發器的意思是當你為一張表建立了表觸發器,你對錶進行更改的時候(insert,update,delete),觸發器會被激發。

事件觸發器是指當你指定乙個事件發生時會被激發的觸發器。

時間觸發器當然也就是按照時間來觸發了。

資料庫索引的概念理解

為什麼需要建立索引?索引是為了用於快速找出在某個列中有某一特定值的行 說明 其實就是快速定位找到符合sql語句篩選條件列的值 反問 不使用索引可不可以呢?答案 當然可以的,只不過到表總的資料量非常大的時候,查詢就非常耗時了。反問 不建立索引耗時的原因是什麼呢?答案 不使用索引,資料庫查詢表中的資料時...

oracle資料庫基礎概念理解

1.oracle資料庫伺服器企業版安裝後會預設安裝乙個資料庫例項,安裝時有4個管理員賬號,安裝時設定相同的使用者名稱及口令。2.資料庫例項安裝好後,我們可以在其上建立多個表空間,接著可以建立新使用者,給新使用者分配connect,resource,dba許可權,給使用者分配所屬的表空間,這樣不同的使...

資料庫概念及常用關係型資料庫

資料庫階段 人工管理 檔案系統 資料庫系統。資料庫概念 database db是按照資料結構來組織,儲存,管理資料的倉庫,是乙個以某種有組織的方式儲存的資料集合。資料庫模型 層次模型,網狀模型,關係模型 關係型資料庫是把複雜的資料結構歸結為簡單的二元關係 二維 形式 對資料的操作幾乎全部建立在乙個或...