版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、04:04,1,,第三章 數(shù)據(jù)庫與表的創(chuàng)建和使用,3.1 數(shù)據(jù)庫概述3.2 數(shù)據(jù)庫的創(chuàng)建、打開與使用3.3 表的創(chuàng)建與使用3.4 永久性關系與參照完整性3.5 有關數(shù)據(jù)庫及其對象的常用函數(shù),04:04,2,3.1 VFP數(shù)據(jù)庫概述,數(shù)據(jù)庫是一個容器,是許多相關的數(shù)據(jù)庫表及其關系的集合。在數(shù)據(jù)庫中可以存儲和管理各種對象,如表、視圖、關系、連接以及存儲過程等。,04:04,3,VFP數(shù)據(jù)庫的組成數(shù)據(jù)庫表視圖(View)連
2、接(Connection)存儲過程,04:04,4,數(shù)據(jù)字典,數(shù)據(jù)字典是指存儲在數(shù)據(jù)庫中用于描述所管理的表和對象的數(shù)據(jù),即關于數(shù)據(jù)的數(shù)據(jù),這些數(shù)據(jù)稱為元數(shù)據(jù)。,04:04,5,數(shù)據(jù)字典可以創(chuàng)建和指定以下內(nèi)容:表中字段的標題、注釋、默認值、輸入掩碼和顯示格式等表的主索引關鍵字數(shù)據(jù)庫表之間的永久性關系長表名和表注釋字段級和記錄級有效性規(guī)則存儲過程插入、更新和刪除事件的觸發(fā)器,04:04,6,3.2 數(shù)據(jù)庫的創(chuàng)建,每創(chuàng)建一個
3、新的數(shù)據(jù)庫都將生成三個文件:數(shù)據(jù)庫文件(.dbc)、關聯(lián)的數(shù)據(jù)庫備注文件(.dct)和關聯(lián)的數(shù)據(jù)庫索引文件(.dcx)。,04:04,7,一、數(shù)據(jù)庫的創(chuàng)建利用界面操作方式創(chuàng)建數(shù)據(jù)庫在“項目管理器”窗口中創(chuàng)建新的數(shù)據(jù)庫通過“新建”對話框創(chuàng)建利用命令方式創(chuàng)建數(shù)據(jù)庫格式:CREATE DATABASE [DatabaseName|?]其中: DatabaseName為創(chuàng)建的數(shù)據(jù)庫文件名,04:04,8,二、數(shù)據(jù)庫的打開在使用
4、數(shù)據(jù)庫前必須打開數(shù)據(jù)庫格式:OPEN DATABASE DatabaseName [EXCLUSIVE|SHARED][NOUPDATE][VALIDATE]功能:打開指定的數(shù)據(jù)庫其中:VALIDATE用于說明在打開數(shù)據(jù)庫時進行數(shù)據(jù)庫的有效性檢驗。,04:04,9,三、設置當前數(shù)據(jù)庫 數(shù)據(jù)庫可以同時打開多個。只有一個是當前數(shù)據(jù)庫。在打開數(shù)據(jù)庫時,最后一個打開的數(shù)據(jù)庫為當前數(shù)據(jù)庫。可以把其他的數(shù)據(jù)庫設置為當前數(shù)據(jù)庫。格式:
5、SET DATABASE TO DatabaseName功能:將指定的數(shù)據(jù)庫設置為當前數(shù)據(jù)庫,04:04,10,四、檢查數(shù)據(jù)庫的有效性格式:VALIDATE DATABASE [RECOVER][TO PRINTER|TO FILE FileName]其中:RECOVER用于說明更新鏈接,缺省時僅檢查數(shù)據(jù)庫的有效性;TO子句用于說明檢查結(jié)果信息的去向,缺省時在VFP主窗口中顯示。該命令只能處理以獨占方式打開的當前數(shù)據(jù)庫。,04:0
6、4,11,五、關閉數(shù)據(jù)庫格式:CLOSE DATABASE功能:關閉當前數(shù)據(jù)庫格式:CLOSE DATABASE ALL功能:關閉所有打開的數(shù)據(jù)庫六、刪除數(shù)據(jù)庫 從“項目管理器”窗口中通過“移去”操作進行刪除,則該數(shù)據(jù)庫不包含在項目中。,04:04,12,3.3 表的創(chuàng)建與使用,04:04,13,表(Table)是指存儲在磁盤文件中的二維表,一張二維表保存為一個表文件(.dbf)。表文件名必須遵守Windows系統(tǒng)對文
7、件名的約定,不可用A-J中的單個字母作文件名。 表中的列稱為字段(Field),它規(guī)定了數(shù)據(jù)的特征;表的行叫做記錄(Record),每一條記錄表示一個實體。,04:04,14,,在Visual FoxPro中,表分為兩種類型:數(shù)據(jù)庫表(簡稱為表)與自由表。數(shù)據(jù)庫表是從屬于某個數(shù)據(jù)庫的表。自由表是不從屬于任何數(shù)據(jù)庫的表。與自由表相比,數(shù)據(jù)庫表除具有自由表的所有特性外,還具有數(shù)據(jù)庫管理的其他特性。,04:04,15,一、表結(jié)構概述
8、字段名字段名命名規(guī)則:名稱中只能包含字母、下劃線“_”、數(shù)字符號和漢字符號;名稱的開頭只能是字母、漢字或下劃線,不能是數(shù)字;名稱長度為1—10個字符;應避免使用系統(tǒng)保留字。,04:04,16,字段的數(shù)據(jù)類型,04:04,17,字段的寬度小數(shù)位數(shù)空值(NULL)支持 空值是用來指示記錄中的一個字段“有或沒有”數(shù)據(jù)的標識。NULL不是一種數(shù)據(jù)類型或一個值,它是用來指示數(shù)據(jù)存在或不存在的一種屬性。,04:04,18,二、表
9、結(jié)構的創(chuàng)建和修改 1、表結(jié)構的創(chuàng)建用“表設計器”(Table Designer)創(chuàng)建表結(jié)構,04:04,19,用CREATE TABLE-SQL命令創(chuàng)建表結(jié)構CREATE TABLE TableName(FieldName1 FieldType [(nFieldWidth[,nPrecision])] [NULL|NOT NULL][,Fieldname2…]),04:04,20,2 表結(jié)構的修改用“表設計器”(Ta
10、ble Designer)修改表的結(jié)構用ALTER TABLE-SQL命令修改表結(jié)構增加字段:ALTER TABLE TableName ADD COLUMNFieldName FieldType [(nFieldWidth [,nPrecision])],04:04,21,修改字段:(此命令不能修改字段名)ALTER TABLE TableName ALTER COLUMNFieldName FieldType [(nFi
11、eldWidth [,nPricision])]刪除字段:ALTER TABLE TableName DROP COLUMN FieldName修改字段名:ALTER TABLE TableName RENAME COLUMN FieldName1 TO FieldName2,04:04,22,三、字段屬性與表屬性,字段的擴展屬性,04:04,23,字段顯示屬性字段的格式(Format) 字段的格式用于指定字段顯示時的格
12、式,包括在瀏覽窗口、表單或報表中顯示時的大小寫和樣式等。輸入掩碼(Input Mask) 字段的輸入掩碼用于指定字段中輸入數(shù)據(jù)的格式。字段的標題(Caption)和注釋(Comment) 標題和注釋都是為了使表具有更好的可讀性。在設置表結(jié)構時,如果字段名不能明確地表達列的含義,可以為字段設置一個標題。,04:04,24,默認值 向表中添加新記錄時,為字段所指定的最初的值稱為該字段的默認值。在設置字段默認值時,默認
13、值必須是一個與字段類型相同的表達式。,04:04,25,字段驗證 字段驗證用來限定字段的取值及取值范圍,包括字段有效性規(guī)則、字段有效性信息和默認值。字段有效性規(guī)則和有效性信息 字段有效性規(guī)則用來控制輸入到字段中的數(shù)據(jù)的取值范圍。該規(guī)則是一個邏輯表達式。字段有效性規(guī)則在字段值改變時發(fā)生作用,它將所輸入的值用定義的邏輯表達式進行驗證,如不滿足(即邏輯表達式的值為.F.),則拒絕該字段值,并顯示一個提示框。,04:04,26
14、,字段有效性信息是一個字符型表達式,通常與字段有效性規(guī)則配合使用,用于指定在不滿足規(guī)則要求時顯示的提示信息。 如果表中已有記錄,且需要設置或修改某字段的有效性規(guī)則,則首先必須確保表中所有記錄滿足將要設置的有效性規(guī)則,否則,有效性規(guī)則無法設置。,04:04,27,四、 表的打開與關閉,在Visual FoxPro中,表使用前必須先打開。1、工作區(qū) 所謂工作區(qū)是指用于標識一張打開的表的區(qū)域。打開一個表時,必須為該表指定一個工
15、作區(qū)。每個工作區(qū)有一個編號,稱為工作區(qū)號,其編號范圍為1-32767(前10個工作區(qū)號也可以用A-J表示)。,04:04,28,一個工作區(qū)中只能打開一張表,用戶可以同時在多個工作區(qū)中打開多張表,也可以將一張表同時在多個工作區(qū)中打開。 系統(tǒng)正在使用的工作區(qū)稱為當前工作區(qū),即默認工作區(qū)。SELECT nWorkArea|cTableAliasnWorkArea為工作區(qū)號;cTableAlias為表別名。工作區(qū)號為0時,選擇未被使用
16、的最小編號的工作區(qū)。,04:04,29,2、“數(shù)據(jù)工作期”窗口在VFP主菜單上選擇窗口,再選擇數(shù)據(jù)工作期,04:04,30,3、表的打開 使用表時首先必須把表打開。表的打開可以是顯式地打開,也可以是隱式地打開。通過界面操作打開表使用菜單命令“文件/打開”或單擊“常用”工具條上的“打開”按鈕打開在“數(shù)據(jù)工作期”窗口中單擊“打開”按鈕在“項目管理器”窗口中選擇需要打開的表,然后單擊“修改”或“瀏覽”按鈕,04:04,31,使用
17、命令打開表USE TableName [IN nWorkArea|cWorkAlias][AGAIN][ALIAS cTableAlias][NOUPDATE][SHARED|EXCLUSIVE],04:04,32,其中:IN子句用于指定在哪個工作區(qū)中打開,缺省時則表示在當前工作區(qū)中打開;AGAIN子句用于說明該表再次打開,即表在多個工作區(qū)中同時被打開;ALIAS子句用于定義表的別名,缺省時表的別名與表名相名;,04:04,
18、33,4、表的關閉通過界面操作在“數(shù)據(jù)工作期”窗口中選定一張表的別名,單擊“關閉”按鈕。使用命令USE [IN nWorkArea|cTableAlias]功能:關閉指定工作區(qū)中的表。其中:不使用IN子句時關閉當前工作區(qū)的表。,04:04,34,√CLOSE TABLES ALL功能:將所有已被打開的表全部關閉,執(zhí)行后將當前工作區(qū)設置為1√ CLOSE ALL功能:關閉所有工作區(qū)中的數(shù)據(jù)庫、表和索引,且將當前工作區(qū)設置
19、為1。,04:04,35,5、表的獨占與共享 VFP是一個多用戶的開發(fā)環(huán)境,網(wǎng)絡上的多個用戶可以在同一時刻訪問同一張表。這種一張表可以同時被多個用戶訪問的情況,就是表的共享使用。反之,當一張表只能被一個用戶打開時,稱為表的獨占使用。 默認狀態(tài)下,表是以獨占方式打開的,可以使用命令來設置打開方式。,04:04,36,五、 記錄的處理,1、記錄的輸入表結(jié)構創(chuàng)建后立即輸入記錄輸入結(jié)束時,單擊窗口的“關閉”按鈕?;虬碈trl+En
20、d或Ctrl+W組合鍵,04:04,37,在瀏覽窗口中追加記錄瀏覽表有多種操作方法單擊菜單“顯示”→“瀏覽”單擊菜單“窗口”→“數(shù)據(jù)工作期” →選擇“表”→“瀏覽”在命令窗口使用命令BROWSE在項目管理器中選擇表→單擊“瀏覽”按鈕,04:04,38,在瀏覽窗口中追加記錄單擊菜單“表”→“追加新記錄”或在命令窗口中輸入命令APPEND BLANK,可追加一條空白記錄,且處于編輯狀態(tài)等待用戶輸入數(shù)據(jù)單擊菜單“顯示”→“追加方
21、式” ,可追加多條記錄單擊菜單“顯示” →“瀏覽”或“顯示” →“編輯”,可在瀏覽窗口和編輯窗口間切換,04:04,39,使用INSERT-SQL命令追加記錄命令格式:INSERT INTO TableName[(FieldName1[,FieldName2,…])]VALUES (eExpression1[,eExpression2,…]) 字段名列表用于指定插入的新記錄的哪些字段需要填值,缺省表示全部字段;表達式列表
22、指定新插入記錄的字段值。字段列表與表達式列表必須對應,且數(shù)據(jù)類型一致。,04:04,40,使用APPEND與APPEND FROM命令追加記錄APPEND命令格式:APPEND [BLANK] [IN nWorkArea | cTableAlias]其中:BLANK用于說明向表中追加一條空白記錄; IN nWorkArea | cTableAlias用于指定表所在的工作區(qū),缺省時為當前工作區(qū)。,04:04,41,將其他文
23、件中的數(shù)據(jù)導入當前工作區(qū)表中單擊菜單“表” →“追加記錄”,可將其他文件中的數(shù)據(jù)導入當前工作區(qū)表中?;蛴妹睿篈PPEND FROM FileName [DELIMITED | XLS]DELIMITED用于說明追加文件類型為文本文件,XLS為Excel文件,缺省時為表文件。,04:04,42,2、瀏覽當前工作區(qū)中的表BROWSE [FIELDS Fieldlist] [FOR lExpression] [FREEZE
24、FieldName] [NOAPPEND] [NODELETE] [NOMODIFY] [TITLE cExpression],04:04,43,FIELDS子句用于指定在瀏覽窗口中出現(xiàn)的字段(字段間以逗號分隔),缺省時表示所有字段;FOR子句用于篩選記錄,僅有滿足條件的記錄在瀏覽窗口中顯示;FREEZE子句用于指定可以修改的字段,其他字段的數(shù)據(jù)不可修改;TITLE子句指定瀏覽窗口的標題,缺省時為表名。,04:04,44,3、記
25、錄的篩選如果用戶只想查看和處理滿足一定條件的一部分記錄,可以對表記錄進行篩選。通過FOR子句的使用可以完成篩選功能;當表處于瀏覽狀態(tài)時,單擊菜單“表”→“屬性”打開“工作區(qū)屬性”對話框,設置“數(shù)據(jù)過濾器”,可以對記錄進行篩選;使用命令:SET FILTER TO [lExpression]其中:條件表達式lExpression用于指定記錄需要滿足的條件,省略時即取消篩選,04:04,45,4、限制對字段的訪問在瀏覽或
26、使用表時,如果只需要顯示或處理表中的部分字段,可以設置字段篩選來限制對某些字段的訪問。通過FIELDS子句的使用可以完成篩選功能;當表處于瀏覽狀態(tài)時,單擊菜單“表”→“屬性”打開“工作區(qū)屬性”對話框,設置“字段篩選”,可以對字段進行篩選;使用命令:SET FIELDS TO [FieldList]其中:字段名表FieldList用于列出所需的字段(字段名間用逗號分隔),省略時即取消篩選,04:04,46,5、記錄的定位
27、記錄指針 當一張表打開后,系統(tǒng)自動地為該表生成三個控制標志:記錄的開始標志、記錄指針標志、記錄的結(jié)束標志。記錄指針標志用于指示當前處理的記錄位置,記錄指針指向的那個記錄稱為“當前記錄”。每當打開一個表文件時,記錄指針總是指向第1條記錄。,04:04,47,格式:RECNO([nWorkArea])功能:返回指定工作區(qū)中記錄指針所指記錄的記錄號,缺省任選項表示當前工作區(qū)。格式:BOF([nWorkArea])功能:測試指定工
28、作區(qū)中記錄指針是否指向記錄的開始標志,如是,則返回.T.,否則為.F.,缺省任選項表示當前工作區(qū)。格式:EOF([nWorkArea])功能:測試指定工作區(qū)中記錄指針是否指向記錄的結(jié)束標志,如是,則返回.T.,否則為.F.,缺省任選項表示當前工作區(qū)。,04:04,48,記錄的定位記錄指針的絕對定位:把指針移到指定位置。記錄指針的相對定位:把指針從當前位置開始,相對于當前記錄向前或向后移動若干條記錄位置。記錄指針的條件定位:按照
29、一定的條件自動地在整張表(或表的某個指定范圍)中查找符合條件的記錄,如找到符合條件的記錄,則把指針定位到該記錄上,否則,指針將指向表的末尾。,04:04,49,通過界面操作方式定位 在利用菜單命令“表”?“轉(zhuǎn)到記錄” ?“定位”進行條件定位時,在圖3-17所示的“記錄定位”對話框中用戶可以設置記錄定位的條件。其中作用范圍(Scope)可選則的范圍有四項:ALL:表中的全部記錄NEXT n:從當前記錄開始的n條記錄RECO
30、RD n:記錄號為n的記錄REST:當前記錄及其后的所有記錄,04:04,50,使用命令進行記錄定位絕對定位GOTO nRecordNumber [IN nWorkArea|IN cTableAlias]|TOP|BOTTOM其中:記錄號nRecordNumber必須在表記錄的有效范圍內(nèi);TOP指首記錄;BOTTOM指末記錄。相對定位SKIP [nRecords][IN nWorkArea|cTableAlias]其
31、中:nRecordNumber用于指定記錄指針需要移動的記錄個數(shù)(正表示向后移動,負表示向前移動),缺省時為1。,04:04,51,條件定位LOCATE FOR lExpression [Scope]其中:條件表達式lExpression用于表示記錄的定位條件;范圍Scope用于指定進行條件定位的范圍。,04:04,52,6、記錄的修改界面方式的記錄修改 對于當前工作區(qū)中的表,可以在瀏覽窗口(或編輯窗口)中對記錄進
32、行修改。 如需對所有記錄(或滿足某種條件的記錄)的某個字段內(nèi)容進行有“規(guī)律”的修改,則可進行“批量修改”。在瀏覽狀態(tài)下,利用菜單命令“表” →“替換字段” ,在“替換字段”對話框中選擇和輸入字段替換的有關要求。,04:04,53,使用命令修改記錄REPLACE命令REPLACE FieldName1 WITH eExpression1 [ADDITIVE][,FieldName2 WITH eExpressio
33、n2 [ADDITIVE]]…[Scope] [FOR lExpression]功能:對當前工作區(qū)中的表進行替換修改。其中:字段名FieldName與表達式eExpression用于指定要更新的字段以及這些字段的新值;ADDITIVE僅對備注型字段有效,使用時表示替換的內(nèi)容追加到原備注中,否則替換原有內(nèi)容;當FOR和Scope同時缺省時,僅對當前記錄進行替換。,04:04,54,UPDATE-SQL命令UPDATE Tabl
34、eName SET Column_Name1=eExpression1 [,Column_Name2=eExpression2,…][WHERE lExpression]功能:對指定表的內(nèi)容進行替換修改。其中:表名TableName用于指定要更新記錄的表;Column_Name=eExpression用于指定要更新的字段以及這些字段的新值;WHERE子句用于指定要更新的記錄,缺省時表示所有記錄。需要說明的是,用該命
35、令更新表時,被更新的表不必事先打開。,04:04,55,7、記錄的刪除與恢復 徹底刪除表中的記錄,分兩個步驟:首先標記要刪除的記錄,然后徹底刪除帶有刪除標記的記錄。標記要刪除的記錄(邏輯刪除)采用界面操作方式 刪除標記的切換可以通過鼠標單擊“刪除標記列” 來完成,或在記錄定位后利用菜單命令“表”→“切換刪除標記”來完成,04:04,56,采用命令方式格式:DELETE [Scope] [FOR lExpressio
36、n] [IN nWorkArea|cTableAlias]其中:缺省工作區(qū)或工作表別名時,指當前工作區(qū)中的表;當范圍和條件同時缺省時,僅對當前記錄加刪除標記。有條件無范圍時為ALL。格式:DELETE FROM TableName [WHERE lExpression]其中:TableName為表名,缺省條件時為所有記錄,此DELETE-SQL命令可在不預先打開表的情況下刪除指定記錄。,04:04,57,恢復帶刪除標記的記錄
37、采用界面操作方式 在瀏覽狀態(tài)下,可以在瀏覽窗口中用鼠標單擊“刪除標記” ,或?qū)⒂涗浿羔樁ㄎ坏叫枰∠麆h除標記的記錄上,使用菜單命令“表”→“切換刪除標記”來完成;采用命令方式格式:RECALL [Scope] [FOR lExpression] 其中:當范圍和條件同時缺省時,僅恢復當前記錄。有條件無范圍時為ALL。,04:04,58,徹底刪除記錄(物理刪除)采用界面操作方式 當表處于瀏覽狀態(tài)時,用菜單命令“表”
38、→“徹底刪除” ,可徹底刪除帶有刪除標記的記錄。采用命令方式格式:PACK 功能:物理刪除帶刪除標記的記錄格式:ZAP功能:刪除當前工作區(qū)中所打開表中的所有記錄注意:物理刪除后記錄不可恢復。,04:04,59,對帶有刪除標記的記錄的訪問格式:SET DELETED ON|OFF功能:指定Visual FoxPro是否對有刪除標記的記錄進行處理其中:ON表示忽略有刪除標記的記錄;OFF(系統(tǒng)默認)表示允許訪問有刪除標
39、記的記錄。,04:04,60,8、數(shù)據(jù)的復制 利用COPY TO命令可以將表(在當前工作區(qū)中已打開)中的數(shù)據(jù)復制到其他表文件或其他類型的文件中。格式:COPY TO FileName [FIELDS FieldList] [Scope] [FOR lExpression] [[TYPE] SDF|XLS|DELIMITED [WITH Delimiter|WITH BLAN
40、K| WITH TAB|WITH CHARACTER Delimiter]],04:04,61,其中:FileName:指定COPY TO要創(chuàng)建的新文件名。FIELDS FieldList:指定要復制到新文件的字段,省略則為全部字段。Scope:指定要復制到新文件的記錄范圍,省略為ALL。FOR lExpression:指定要復制的記錄需滿足的條件。最后一個選項:指定復制生成的文件
41、類型,缺省則為表文件。,04:04,62,六、 表的索引,記錄的順序物理順序:表中的記錄通常是按其輸入的時間順序存放的,這種順序稱為記錄的物理順序。邏輯順序:表中的記錄可按某個字段值或某些字段值排序,這種順序稱為邏輯順序。(可以實現(xiàn)對表記錄的快速查詢),04:04,63,1、索引概述索引:索引是根據(jù)索引關鍵字的值進行邏輯排序的一組指針,它提供了對數(shù)據(jù)的快速訪問,且可以對表中的各條記錄強制實現(xiàn)唯一性。索引關鍵字:索引關鍵字是建立
42、索引的依據(jù),它通常是一個字段或由多個字段組成 的表達式。索引標識:索引的名稱。,04:04,64,索引的類型候選索引(Candidate Index):候選索引是以表的候選關鍵字為索引表達式而創(chuàng)建的索引。注意:對于表的所有記錄來說,指定的索引表達式的值不可重復。主索引(Primary Index):對于數(shù)據(jù)庫表來說,可以從候選索引中選取一個作為該表的主索引。每張數(shù)據(jù)庫表只能創(chuàng)建一個主索引。普通索引(Regular Ind
43、ex):普通索引的索引表達式的值允許出現(xiàn)重復,一張表可以創(chuàng)建多個普通索引。唯一索引(Unique Index):唯一索引的索引表達式的值也可以重復,但在索引文件中重復的值僅存儲一次。,04:04,65,2、索引文件的種類結(jié)構復合索引文件非結(jié)構復合索引文件獨立索引文件,04:04,66,3、創(chuàng)建結(jié)構復合索引用“表設計器”創(chuàng)建結(jié)構復合索引,04:04,67,用命令創(chuàng)建結(jié)構復合索引格式:INDEX ON eExpressi
44、on TAG TagName [[FOR lExpression] [ASCENDING|DESCENDING] [UNIQUE|CANDIDATE] ]其中:eExpression為索引表達式;TagName為索引標識;FOR子句用于篩選參加索引的記錄; ASCENDING和DESCENDING用于指定索引是按升序還是降序排序,缺省時為升序; UNIQUE和CANDIDATE用于指定索引文件類型為唯一索引還是候選索引,缺省
45、時為普通索引。,04:04,68,4、索引的修改和刪除索引的修改用表設計器修改索引用命令修改索引(通過創(chuàng)建同索引名的索引覆蓋原索引來修改索引)索引的刪除用表設計器刪除索引,04:04,69,用命令刪除索引格式:DELETE TAG TagName1 [,TagName2,…]功能:刪除結(jié)構復合文件中指定的索引格式:DELETE TAG ALL功能:刪除結(jié)構復合索引文件中的所有索引,并從磁盤上刪除該索引文件。,0
46、4:04,70,5、索引的使用打開表的同時指定主控索引格式:USE TableName ORDER TagName功能:打開表的同時指定索引標識TagName為主控索引。打開表后再設置主控索引格式:SET ORDER TO [TagName [IN nWorkArea |cTableAlias] [ASCENDING|DESCENDING]]其中:索引名TagName用于指定主控索引,缺省時取消主控
47、索引。,04:04,71,6、利用索引快速定位記錄格式:SEEK eExpression [ORDER TagName [ASCENDING|DESCENDING] ] [IN nWorkArea |cTableAlias] 功能:在一張表中搜索指定表達式(eExpression)的值首次出現(xiàn)的記錄,這條記錄的索引關鍵字必須與指定的表達式(eExpression)匹配。,04:04,72,3.5 有關表操作
48、的常用函數(shù),SELECT()函數(shù)格式:SELECT([0|1|cTableAlias])功能:測試工作區(qū)號其中:參數(shù)0用于返回當前工作區(qū)號, 參數(shù)1用于返回當前未被使用工作區(qū)的最大編號;別名cTableAlias用于返回該表所在的工作區(qū)號,使用別名時必須加引號。,04:04,73,ALIAS()函數(shù)格式:ALIAS([nWorkArea])功能:返回當前或指定工作區(qū)中表的別名。FIELD()函數(shù)格式:FIELD(nFiel
49、dNumber [,nWorkArea| cTableAlias])功能:用于返回已打開表的指定序號的字段名。其中:字段序號nFieldNumber是指表結(jié)構建立時的字段順序號,第一個字段的序號為1;工作區(qū)號與別名缺省時表示當前工作區(qū)。,04:04,74,FCOUNT()函數(shù)格式:FCOUNT([ nWorkArea| cTableAlias])功能:用于返回已打開表的字段個數(shù)。其中:工作區(qū)號與別名缺省時表示當前工作區(qū)。,04
50、:04,75,3.4 永久關系與參照完整性,表之間的關系關系的種類一對一關系一對多關系多對多關系分析并確定表之間關系,04:04,76,1、表之間的永久性關系,數(shù)據(jù)庫表間的永久性關系是根據(jù)表的索引建立的,索引的類型決定了要創(chuàng)建的永久性關系的類型。,04:04,77,,永久性關系的創(chuàng)建確定兩張具有一對一或一對多關系的表建立主表的主索引或候選索引建立子表的主索引或候選索引(一對一關系)或建立子表的普通索引(一對多關系)在
51、“數(shù)據(jù)庫設計器”窗口中,將主表的主索引或候選索引標識拖放到子表相應的索引標識上,即完成了永久性關系的設置,04:04,78,永久關系的編輯 在“數(shù)據(jù)庫設計器”窗口中,雙擊關系連線打開“編輯關系”對話框,在該對話框中可重新選擇用以建立關系的兩張表的索引標識。永久關系的刪除 在“數(shù)據(jù)庫設計器”窗口中,單擊關系連線后(此時連線變粗),按【Del】鍵。,04:04,79,2、參照完整性 “參照完整性”(Referent
52、ial Integrity,簡稱RI)是用來控制數(shù)據(jù)的完整性,尤其是控制數(shù)據(jù)庫中相關表之間的主關鍵字和外部關鍵字之間數(shù)據(jù)一致性的規(guī)則。,04:04,80,參照完整性的一般要求 對于一對多關系的兩張表,其數(shù)據(jù)的完整性、一致性要求相關表之間應該滿足如下三個規(guī)則:子表中的每一個記錄在對應的主表中必須有一個記錄。在子表中插入記錄時,其外部關鍵字必須是父表主關鍵字值中的一個。在父表中刪除記錄時,與該記錄相關的子表中的記錄必須全部刪
53、除。,04:04,81,編輯參照完整性,04:04,82,參照完整性的設置,04:04,83,3.5 有關數(shù)據(jù)庫及其對象的常用函數(shù),格式:DBC()功能:返回當前打開的數(shù)據(jù)庫的完整文件名。格式:DBUSED(cDatabaseName)功能:返回指定的數(shù)據(jù)庫是否已經(jīng)打開。如果已打開,則函數(shù)返回值為.T. ,否則函數(shù)返回值為.F. 。格式:DBGETPROP(cName , cType , cProperty),04:04,84
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- vfp數(shù)據(jù)庫的創(chuàng)建和使用
- a第3章 創(chuàng)建和管理數(shù)據(jù)庫
- 第4章 數(shù)據(jù)庫與表的創(chuàng)建和操作2
- 3創(chuàng)建數(shù)據(jù)庫
- 第5章數(shù)據(jù)庫的創(chuàng)建和管理
- 第3章 數(shù)據(jù)庫和表的創(chuàng)建
- oracle數(shù)據(jù)庫創(chuàng)建與表空間維護
- 第3章創(chuàng)建數(shù)據(jù)庫和數(shù)據(jù)庫文件
- 第3章 數(shù)據(jù)庫創(chuàng)建與管理
- 第3章 數(shù)據(jù)庫的創(chuàng)建與管理
- 創(chuàng)建表對表修改數(shù)據(jù)庫
- 數(shù)據(jù)庫—創(chuàng)建、建表、查詢語句
- 第三章數(shù)據(jù)庫與表的創(chuàng)建及使用_2 - 副本
- 家蠶蛋白質(zhì)數(shù)據(jù)庫的創(chuàng)建和應用.pdf
- 實驗三 創(chuàng)建數(shù)據(jù)庫和數(shù)據(jù)表
- 創(chuàng)建數(shù)據(jù)庫.doc
- 關系數(shù)據(jù)庫規(guī)范創(chuàng)建和數(shù)據(jù)完整性維護.pdf
- 數(shù)據(jù)庫的建立表的建立和使用
- 第6章 數(shù)據(jù)庫的創(chuàng)建與管理
- 第03章數(shù)據(jù)庫的創(chuàng)建與維護
評論
0/150
提交評論