數(shù)據(jù)庫結(jié)構(gòu)是指在計算機(jī)的存儲設(shè)備上合理存放的相關(guān)聯(lián)的有結(jié)構(gòu)的數(shù)據(jù)集合的結(jié)構(gòu)。一個數(shù)據(jù)庫結(jié)構(gòu)含有各種成分,包括數(shù)據(jù)庫、數(shù)據(jù)表、字段等。
數(shù)據(jù)庫(Database)
Visual Basic中使用的數(shù)據(jù)庫是關(guān)系型數(shù)據(jù)庫(Relational Database)。一個數(shù)據(jù)庫由一個或一組數(shù)據(jù)表組成。每個數(shù)據(jù)庫都以文件的形式存放在磁盤上,即對應(yīng)于一個物理文件。不同的數(shù)據(jù)庫,與物理文件對應(yīng)的方式也不一樣。對于dBASE,FoxPro和Paradox格式的數(shù)據(jù)庫來說,一個數(shù)據(jù)表就是一個單獨的數(shù)據(jù)庫文件,而對于Microsoft Access、Btrieve格式的數(shù)據(jù)庫來說,一個數(shù)據(jù)庫文件可以含有多個數(shù)據(jù)表。
1、數(shù)據(jù)表(Table)
簡稱表,由一組數(shù)據(jù)記錄組成,數(shù)據(jù)庫中的數(shù)據(jù)是以表為單位進(jìn)行組織的。一個表是一組相關(guān)的按行排列的數(shù)據(jù);每個表中都含有相同類型的信息。
表實際上是一個二維表格,例如,一個班所有學(xué)生的考試成績,可以存放在一個表中,表中的每一行對應(yīng)一個學(xué)生,這一行包括學(xué)生的學(xué)號,姓名及各門課程成績。
2、記錄(Record)
表中的每一行稱為一個記錄,它由若干個字段組成。
3、字段(Field)
也稱域。表中的每一列稱為一個字段。每個字段都有相應(yīng)的描述信息,如數(shù)據(jù)類型、數(shù)據(jù)寬度等。
數(shù)據(jù)庫結(jié)構(gòu)的其他組成結(jié)構(gòu):
1、索引(Index)
為了提高訪問數(shù)據(jù)庫的效率,可以對數(shù)據(jù)庫使用索引。當(dāng)數(shù)據(jù)庫較大時,為了查找指定的記錄,則使用索引和不使用索引的效率有很大差別。
索引實際上是一種特殊類型的表,其中含有關(guān)鍵字段的值(由用戶定義)和指向?qū)嶋H記錄位置的指針,這些值和指針按照特定的順序(也由用戶定義)存儲,從而可以以較快的速度查找到所需要的數(shù)據(jù)記錄。
2、查詢(Query)
一條SQL(結(jié)構(gòu)化查詢語言)命令,用來從一個或多個表中獲取一組指定的記錄,或者對某個表執(zhí)行指定的操作。當(dāng)從數(shù)據(jù)庫中讀取數(shù)據(jù)時,往往希望讀出的數(shù)據(jù)符合某些條件,并且能按某個字段排序。使用SQL,可以使這一操作容易實現(xiàn)而且更加有效。
SQL是非過程化語言(有人稱為第四代語言),在用它查找指定的記錄時,只需指出做什么,不必說明如何做。每個語句可以看作是一個查詢(query),根據(jù)這個查詢,可以得到需要的查詢結(jié)果。
3、過濾器(Filter)
過濾器是數(shù)據(jù)庫的一個組成部分,它把索引和排序結(jié)合起來,用來設(shè)置條件,然后根據(jù)給定的條件輸出所需要的數(shù)據(jù)。
4、視圖(view)
數(shù)據(jù)的視圖指的是查找到(或者處理)的記錄數(shù)和顯示(或者進(jìn)行處理)這些記錄的順序。在一般情況下,視圖由過濾器和索引控制。