版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、會計學(xué)1章章VFP數(shù)據(jù)庫及其操作數(shù)據(jù)庫及其操作(cozu)第一頁,共122頁。掌握數(shù)據(jù)庫的建立、使用、修改(xigi)、刪除方法掌握數(shù)據(jù)庫表和自由表的建立、修改(xigi)表結(jié)構(gòu),輸入、瀏覽、增加、刪除、修改(xigi)、顯示、查詢定位記錄的方法掌握表的索引的建立、使用、刪除的操作能夠建立表之間的聯(lián)系,并能同時使用多個表本章(bn zhn)知識點與要求:第1頁/共122頁第二頁,共122頁。第2頁/共122頁第三頁,共122頁。數(shù)據(jù)庫(DB) :答:不。數(shù)據(jù)庫主要(zhyo)是通過對表的操作達到組織和管理數(shù)據(jù)的目的。表是組織數(shù)據(jù)、處理數(shù)據(jù)的基本單元。數(shù)據(jù)庫直接(zhji)管理數(shù)據(jù)嗎?如果把日常
2、工作中的各個文件、資料看成一個個數(shù)據(jù)的話,那么表就是存放這些文件、資料的文件夾,數(shù)據(jù)庫就是存放文件夾的文件柜。文件夾(表) 是我們?nèi)粘9ぷ鞑僮?cozu)的對象,文件柜(數(shù)據(jù)庫)擔負著承載、組織和管理文件夾(表)的作用 “皮之不存,毛將焉附?”,因此,我們先學(xué)習(xí)數(shù)據(jù)庫的相關(guān)知識。引言存儲在計算機存儲設(shè)備上的結(jié)構(gòu)化的數(shù)據(jù)集合。第3頁/共122頁第四頁,共122頁。3.1.1 建立(jinl)數(shù)據(jù)庫【方法(fngf)一:】在項目管理器中新建數(shù)據(jù)庫菜單或工具欄 “新建” 選擇(xunz)“數(shù)據(jù)庫” 新建文件或向?qū)А痉椒ㄈ骸棵罘绞紺reate database 【方法二:】菜單方式前兩種方式新建數(shù)
3、據(jù)庫后會自動打開數(shù)據(jù)庫設(shè)計器命令方式不自動打開數(shù)據(jù)庫設(shè)計器數(shù)據(jù)庫文件是以(.dbc)為擴展名文件第4頁/共122頁第五頁,共122頁。3.1.2 打開(d ki)數(shù)據(jù)庫【方法(fngf)一:】項目管理器中菜單(ci dn)或工具欄 “打開”【方法三:】命令方式open database exclusive|shared【方法二:】菜單方式選中單擊若同時打開了多個數(shù)據(jù)庫,可以指定當前的數(shù)據(jù)庫: SET DATABASE TO 數(shù)據(jù)庫名【說明:】數(shù)據(jù)庫名必須為已經(jīng)打開的數(shù)據(jù)庫。如果省略數(shù)據(jù)庫名,則不指定當前數(shù)據(jù)庫(沒有當前數(shù)據(jù)庫)。第5頁/共122頁第六頁,共122頁。3.1.3 修改(xigi)
4、數(shù)據(jù)庫修改(xigi)數(shù)據(jù)庫實際就是打開數(shù)據(jù)庫設(shè)計器,修改(xigi)相應(yīng)的內(nèi)容。【方法(fngf)一:】在項目管理器中【方法三:】命令方式【方法二:】菜單方式Create database 選中單擊modify database 第6頁/共122頁第七頁,共122頁。3.1.4 關(guān)閉(gunb)數(shù)據(jù)庫【方法(fngf)一:】在項目管理器中【方法(fngf)二:】命令方式close database all選中單擊關(guān)閉當前數(shù)據(jù)庫,如果帶all子句,則關(guān)閉所有打開的數(shù)據(jù)庫第7頁/共122頁第八頁,共122頁。3.1.5 刪除(shnch)數(shù)據(jù)庫【方法(fngf)一:】在項目管理器中【方法二:】命
5、令(mng lng)方式選中單擊delete database deletetables刪除指定的數(shù)據(jù)庫,如果帶deletetables子句時,連同數(shù)據(jù)庫內(nèi)的表一起刪除,否則,數(shù)據(jù)庫內(nèi)的表變?yōu)樽杂杀淼?頁/共122頁第九頁,共122頁。第9頁/共122頁第十頁,共122頁。引言(ynyn) 在數(shù)據(jù)庫系統(tǒng)中也存在類似情況(qngkung):一些表存放于數(shù)據(jù)庫之內(nèi)一些表存放于數(shù)據(jù)庫之外。文件夾存放(cnfng)在文件柜里文件夾沒有存放在文件柜里存在于某一個數(shù)據(jù)庫中,接受數(shù)據(jù)庫管理的數(shù)據(jù)表稱為數(shù)據(jù)庫表獨立存在數(shù)據(jù)庫之外,不受任何數(shù)據(jù)庫管理的數(shù)據(jù)表稱為自由表統(tǒng)稱數(shù)據(jù)表或表如果把日常工作中的各個文件、資
6、料看成一個個數(shù)據(jù)的話,那么表就是存放這些文件、資料的文件夾,數(shù)據(jù)庫就是存放文件夾的文件柜。第10頁/共122頁第十一頁,共122頁。問題:自由表與數(shù)據(jù)庫表有何異同?兩者可以(ky)互相轉(zhuǎn)換嗎?(1)兩者都是一個以(.dbf)為擴展名的獨立文件,使用(shyng)和操作方法沒有任何區(qū)別。(2)自由表獨立存在,不與任何數(shù)據(jù)庫相關(guān)聯(lián); 數(shù)據(jù)庫表存在于數(shù)據(jù)庫中,與某一個數(shù)據(jù)庫相關(guān)聯(lián)。(3)數(shù)據(jù)庫表中字段名的長度為1-128個字符, 自由表中字段名的長度不超過10個字符。(4)將數(shù)據(jù)庫表從數(shù)據(jù)庫中移除,就變成自由表; 把自由表添加到數(shù)據(jù)庫中就變成數(shù)據(jù)庫表,二者可以轉(zhuǎn)換第11頁/共122頁第十二頁,共12
7、2頁。3.2.1 建立(jinl)表菜單或工具欄按鈕“新建” 選擇“表” 新建文件(wnjin)或向?qū)А痉椒?fngf)一:】項目管理器中【方法三:】命令方式【方法四:】菜單方式【方法二:】數(shù)據(jù)庫管理器中Create 表文件名注意:使用方法三、四新建數(shù)據(jù)表時,如果存在已經(jīng)打開的數(shù)據(jù)庫,則新建的數(shù)據(jù)表為數(shù)據(jù)庫表,否則,為自由表。1、 建立表文件第12頁/共122頁第十三頁,共122頁。2、 設(shè)計(shj)表的結(jié)構(gòu)數(shù)據(jù)庫表的表設(shè)計(shj)器自由(zyu)表的表設(shè)計器第13頁/共122頁第十四頁,共122頁。在VFP6.0中字段變量的數(shù)據(jù)類型有13種:數(shù)值型、字符型、貨幣(hub)型、日期型、日期
8、時間型、邏輯型、整型、浮點型、雙精度型、備注型、通用型、備注型(二進制)、通用型(二進制)。(1)字段名:表中每一列的標題稱為字段名,將來可以通過字段名直接引用表中的數(shù)據(jù)(shj),字段名的命名遵循變量命名規(guī)則,且同一個表中字段名不能重復(fù)。(2) 類型:字段的數(shù)據(jù)類型,決定(judng)了該字段能夠存儲哪一種類型的數(shù)據(jù)。第14頁/共122頁第十五頁,共122頁。(6)NULL:設(shè)置(shzh)該字段是否允許為空值(值為不確定狀態(tài))。(3) 寬度(kund):字段寬度(kund),決定了該字段能夠放數(shù)據(jù)的最大字符數(shù)或數(shù)值位數(shù)。(4)小數(shù)位數(shù):定義數(shù)值型、浮點型、雙精度型數(shù)據(jù)(shj)需保留的小數(shù)
9、位數(shù)。(5)索引:是否將當前字段為設(shè)置索引字段。(后面章節(jié)詳細講)第15頁/共122頁第十六頁,共122頁。3、 輸入(shr)表的記錄注意:(1)輸入的數(shù)據(jù)要與字段的類型(lixng)、寬度、小數(shù)點位數(shù)一致。(2)備注型、通用型數(shù)據(jù)的輸入需要在專門文件中輸入。備注型輸入內(nèi)容后 表中“memo”變?yōu)椤癕emo”字樣;通用型輸入內(nèi)容后 表中“gen”變?yōu)?“Gen”字樣。第16頁/共122頁第十七頁,共122頁。如果(rgu)是數(shù)據(jù)庫表,還可以設(shè)置字段有效性、格式、掩碼等。顯示(xinsh)組框:格式(g shi):確定字段顯示時采用的大小寫、字體和樣式等。字符字符功能功能字符字符功能功能! !
10、字母轉(zhuǎn)換成大寫字母轉(zhuǎn)換成大寫B(tài) B左對齊左對齊J J右對齊右對齊I I居中居中T T刪除前導(dǎo)空格和結(jié)尾空格刪除前導(dǎo)空格和結(jié)尾空格(用括號括住負數(shù)用括號括住負數(shù)YSYS使用系統(tǒng)短格式日期顯示使用系統(tǒng)短格式日期顯示YLYL使用系統(tǒng)長格式日期顯示使用系統(tǒng)長格式日期顯示常用格式字符及功能如下表第17頁/共122頁第十八頁,共122頁。顯示(xinsh)組框:輸入掩碼:用于設(shè)置字段的輸入格式,屏蔽非法格式的輸入,減少輸入錯誤。掩碼字符及功能(gngnng)如下表:字符字符功能功能字符字符 功能功能A A只允許字母只允許字母9 9只允許數(shù)字和只允許數(shù)字和+-+-號號L L只允許邏輯數(shù)據(jù)只允許邏輯數(shù)據(jù)N N
11、只允許字母和數(shù)字只允許字母和數(shù)字# #允許數(shù)字、允許數(shù)字、+-+-號和空格號和空格X X允許任何字符允許任何字符如果是數(shù)據(jù)庫表,還可以設(shè)置(shzh)字段有效性、格式、掩碼等。第18頁/共122頁第十九頁,共122頁。顯示(xinsh)組框:標題(biot):用于字段顯示時的標題(biot),沒有則顯示字段名。如果是數(shù)據(jù)庫表,還可以設(shè)置(shzh)字段有效性、格式、掩碼等。第19頁/共122頁第二十頁,共122頁。如果是數(shù)據(jù)庫表,還可以(ky)設(shè)置字段有效性、格式、掩碼等。字段有效性組框:規(guī)則:建立檢查(jinch)字段輸入數(shù)據(jù)是否有效的規(guī)則(表達式)。定義字段有效性規(guī)則(guz)、違反規(guī)則(
12、guz)時的提示信息和字段的默認值。信息:當輸入數(shù)據(jù)違反規(guī)則時的提示信息。默認值:預(yù)設(shè)輸入數(shù)據(jù)的默認值。注意:規(guī)則的結(jié)果為邏輯值。信息是字符串表達式。默認值視字段類型而定。第20頁/共122頁第二十一頁,共122頁。如果是數(shù)據(jù)庫表,還可以(ky)設(shè)置字段有效性、格式、注釋等??梢?ky)為每一個字段添加注釋說明,便于日后或其他人對數(shù)據(jù)表進行維護。字段注釋(zhsh):第21頁/共122頁第二十二頁,共122頁。3.2.2 表的基本操作只有先打開表,才能對表進行(jnxng)相關(guān)的操作。1、打開(d ki)表菜單(ci dn)方式命令方式use exclusive|shared獨占方式共享方式2
13、、主窗口顯示表結(jié)構(gòu)List | display structure3、復(fù)制表結(jié)構(gòu)copy structure to fields 第22頁/共122頁第二十三頁,共122頁。4、修改(xigi)表結(jié)構(gòu)菜單(ci dn)方式命令(mng lng)方式數(shù)據(jù)庫方式項目管理器方式modify structure5、瀏覽表的記錄菜單方式命令方式數(shù)據(jù)庫方式項目管理器方式browse fieldsforlist | display fieldsfor主窗口顯示表的形式顯示第23頁/共122頁第二十四頁,共122頁。6、追加(zhuji)記錄菜單(ci dn)方式命令(mng lng)方式Append bla
14、nk在文件尾追加一條或多條記錄打開表輸入窗口供用戶追加記錄。當有blank選項時,在表尾追加一條空記錄,不打開表輸入窗口。命令方式insert blankbefore【說明】(1)缺省blank 時,彈出記錄編輯窗口,由用戶輸入插入的內(nèi)容否則,系統(tǒng)自動插入一條空記錄,而不打開記錄編輯窗口;(2)有before選項時,在當前記錄前插入;否則在當前記錄后插入(3)插入新記錄后,其后面記錄均自動順次后移。7、插入記錄在指定位置插入一條或多條新記錄第24頁/共122頁第二十五頁,共122頁。8、修改(xigi)記錄【功能】打開表編輯窗口供用戶修改(xigi)記錄。菜單(ci dn)方式命令方式chan
15、ge | edit fields forreplace with ,字段2 with for 【命令二】【例】對所有少數(shù)名族的學(xué)生的成績都加上10分Replace 成績 with 成績+10 for left(民族,2)!=“漢”Change 、 Edit、Replace【命令一】【功能】對滿足條件的記錄,用表達式的值直接替換字段的值 不打開表編輯窗口。第25頁/共122頁第二十六頁,共122頁。9、刪除(shnch)記錄菜單(ci dn)方式命令(mng lng)方式Delete、recall、pack、zap邏輯刪除物理刪除給要刪除的記錄加上刪除標記,可以恢復(fù)把加了邏輯刪除標記的記錄從表中
16、永久地清除掉,不可以恢復(fù)Delete FOR在滿足條件的記錄加上邏輯刪除標記。Recall FOR撤銷被邏輯刪除的記錄。Pack Zap 物理刪除帶邏輯刪除標記記錄。物理刪除當前表中所有記錄,無論是否有邏輯刪除標記。第26頁/共122頁第二十七頁,共122頁。10、記錄(jl)的查詢定位前面很多地方提到“當前記錄”,什么是當前記錄?數(shù)據(jù)表建立后,系統(tǒng)會為表設(shè)置一個指向(zh xin)記錄的指針,記錄指針所指向(zh xin)的記錄稱為當前記錄。記錄的定位就是將記錄指針指向(zh xin)指定的記錄。跟記錄(jl)及指針位置有關(guān)的幾個函數(shù)recno()返回當前記錄的記錄號reccount()返回
17、當前表的總記錄個數(shù),包括邏輯刪除的記錄BOF()判斷指針是否指向表文件頭,若指針指向文件頭,返回真,否則返回假;判斷指針是否指向表文件尾,若指針指向文件尾,返回真,否則返回假;EOF()第27頁/共122頁第二十八頁,共122頁。在表第一條(首記錄top)的上面有一個文件(wnjin)起始標志,稱文件(wnjin)頭 Beginning Of File(BOF);在表最后一條(尾記錄bottom)的下面有一個文件(wnjin)結(jié)束標志,稱文件(wnjin)尾 End Of File(EOF);文件起始標志首記錄(top)第2個記錄第i個記錄.尾記錄(bottom)文件結(jié)束標志表文件邏輯(lu
18、j)結(jié)構(gòu)記錄(jl)指針第28頁/共122頁第二十九頁,共122頁。10、記錄(jl)的查詢定位菜單(ci dn)方式命令(mng lng)方式go、skip、locate菜單“表”| “轉(zhuǎn)到記錄”go n|top|bottom 把記錄指針移動到指定記錄。絕對移動n:將記錄指針移動到第n條記錄,n為正整數(shù);top:將記錄指針移動到當前表的第一條記錄;bottom:將記錄指針移動到當前表的最后一條記錄;skip n 相對于當前記錄,記錄指針向上或向下的移動若干條 記錄;相對移動n為正數(shù)時,向下移動n條記錄;n為負數(shù)時,向上移動n條記錄。文件起始標志首記錄(top)第2個記錄第n個記錄.尾記錄(b
19、ottom)文件結(jié)束標志第29頁/共122頁第三十頁,共122頁。【例】use 學(xué)生基本(jbn)信息表?reccount()?recno()skip 3?recno()go 5?recno()skip -3?recno()go bottom?recno()?eof()skip?eof()go top?bof()skip -1?bof()第30頁/共122頁第三十一頁,共122頁。記錄查詢(chxn)定位的locate命令【格式(g shi)】Locate for 【功能】執(zhí)行該命令后,記錄指針定位在滿足條件的第一條記錄上,若無滿足條件的記錄,則指針指向文件結(jié)束位置。若要使指針指向下一條滿足條
20、件的記錄,需要使用(shyng)continue命令配合。為了判斷l(xiāng)ocate或continue是否找到了滿足條件的記錄,可以使用found()函數(shù),如果有滿足條件的記錄,該函數(shù)返回真,否則返回假。Locate常用的結(jié)構(gòu)是:Locate for 條件do while found() continueenddo該結(jié)構(gòu)的功能是首先找到滿足條件的第一條記錄,接著在循環(huán)體內(nèi)進行有關(guān)處理,然后使用continue找到下一條滿足條件的記錄,并進行處理,如此循環(huán),一直到最后一條記錄。第31頁/共122頁第三十二頁,共122頁?!纠烤幊虒崿F(xiàn):從鍵盤輸入學(xué)生姓名,在學(xué)生信息.DBF中按姓名進行(jnxng)查
21、詢,若查到則顯示該記錄,若沒查到顯示“查無此人”。 clearaccept “請輸入姓名(xngmng):” to xmmuse 學(xué)生信息locate for xm=xmmif found() displayelse ?“查無此人!”endifuse第32頁/共122頁第三十三頁,共122頁。11、表與表及表與excel文件(wnjin)之間的數(shù)據(jù)交換菜單(ci dn)方式命令(mng lng)方式【格式】Copy to 文件格式 范圍 fields for while 【功能】把當前表中的全部或部分數(shù)據(jù)復(fù)制到新文件中?!菊f明】 1)導(dǎo)出表或txt可省略文件格式,導(dǎo)出excel等需要文件格式
22、2) fields用以指定復(fù)制到新文件中的字段結(jié)構(gòu)及順序,缺省時為全部字段。 3)范圍子句有:all、next n、record n和rest。 若省略則為all 4) for/while 設(shè)定條件(1)表-表、excel、文本等for和while 的區(qū)別: 菜單”文件”-”導(dǎo)出”第33頁/共122頁第三十四頁,共122頁。for和while 的區(qū)別: for: 在指定范圍內(nèi)選擇(xunz)每一條符合條件的記錄; while:在指定范圍內(nèi),從當前記錄開始(范圍為record n時除外)操作滿足條件的記錄,一旦遇到不滿足條件的記錄即終止命令的執(zhí)行,即使后面有滿足條件的記錄也不再操作。 若當前記錄
23、就不滿足條件,則選擇(xunz)的記錄數(shù)為0。第34頁/共122頁第三十五頁,共122頁。11、表與表及表與excel文件(wnjin)之間的數(shù)據(jù)交換(2) excel、文本(wnbn)等-表菜單(ci dn)”文件”-”導(dǎo)入”菜單方式命令方式菜單”表”-”追加記錄”append from fields for excel文件格式 sheet sheetname例:Append from xuesheng.xls xl5 &excelexcel5.0文件格式(3)從表、excel、文本等文件向表追加數(shù)據(jù)第35頁/共122頁第三十六頁,共122頁。第36頁/共122頁第三十七頁,共122頁。3.
24、3.1 排序(pi x)排序是另外生成一個(y )按要求排好順序的新表【格式(g shi)】sort to on /A/D/C, /a/d/c. fields for【功能】對記錄先按指定的指定順序重新排序后生成一個新的表文件?!菊f明】 1) 必須先打開排序的數(shù)據(jù)表文件。 2) 存在,,時,先按排序,字段1相同時再按排序,依次類推。 3) /A為升序,/D為降序;缺省時按升序。/C 排序時不區(qū)分大小寫。例:把student表中的記錄按出生日期和姓名升序排序 sort to new1 on csrq,xm第37頁/共122頁第三十八頁,共122頁。3.3.2 索引(suyn) 為加快對表的查詢操
25、作,并且不改變表中記錄的物理順序,創(chuàng)建的由指向表記錄的指針構(gòu)成的,且這些指針邏輯上按照(nzho)指定字段或字段表達式的值進行排序的文件就是索引。 這個(zh ge)指定的字段或字段表達式就稱為索引表達式。 索引文件和表文件分別存儲,當表文件與索引文件一起使用時,就能按索引文件中記載的順序?qū)υ磉M行操作。第38頁/共122頁第三十九頁,共122頁。單索引(suyn)文件(.IDX)結(jié)構(gòu)(jigu)復(fù)合索引復(fù)合索引(suyn)文件(.CDX)非結(jié)構(gòu)復(fù)合索引結(jié)構(gòu)化與非結(jié)構(gòu)化索引文件的區(qū)別:1、結(jié)構(gòu)化復(fù)合索引的主文件名與表文件名相同,索引文件隨表的打開而打開,在更新記錄時自動維護;使用方便,最常用。
26、2、而非結(jié)構(gòu)化復(fù)合索引文件的主文件名與表文件名不同,索引文件必須單獨打開。索引文件的分類只能按一個字段建立索引,也就是只能有一個索引項可以按多個字段建立索引,也即是可以包含多個索引項,每個索引項都有一個索引標識,代表記錄的某一種邏輯順序第39頁/共122頁第四十頁,共122頁。VFP中的索引(suyn)分為主索引(suyn)、候選索引(suyn)、普通索引(suyn)、惟一索引(suyn)四種:主索引:僅適用于數(shù)據(jù)庫表,其索引字段不允許有重復(fù)值,一個數(shù)據(jù)庫表只能建立(jinl)一個主索引。候選索引:其索引字段不允許有重復(fù)值,但一個表可以創(chuàng)建多個候選索引。普通索引:其索引字段中允許出現(xiàn)重復(fù)值,一
27、個表可以創(chuàng)建多個普通索引。唯一索引:其索引字段中允許出現(xiàn)重復(fù)值,一個表可以創(chuàng)建多個唯一索引。其“唯一”表示索引字段出現(xiàn)重復(fù)值時,索引列表中只保留首次出現(xiàn)此值的記錄。第40頁/共122頁第四十一頁,共122頁。1、創(chuàng)建(chungjin)索引命令(mng lng)方式用表設(shè)計(shj)器創(chuàng)建索引【格式1】 index on to for unique | candidate compact additive 【格式2】 index on tag of for ascending | descending unique | candidate【說明】ascending升序,descending 降
28、序,compact建立一個壓縮的單索引文件,復(fù)合索引總是壓縮的。 unique建立唯一索引, candidate建立候選索引;都缺省時將建立普通索引, additive不關(guān)閉已打開的索引,否則關(guān)閉。命令方式不能建立主索引。在表設(shè)計器創(chuàng)建的索引都是結(jié)構(gòu)化復(fù)合索引第41頁/共122頁第四十二頁,共122頁。use 職工.dbf(1)以倉庫號為索引(suyn)字段,建立單索引(suyn)文件sy_test.idx, 普通索引(suyn)index on 倉庫號 to sy_test.idx(2)以職工號為索引(suyn)字段,建立一個索引(suyn)標識為ckhjgfh的 結(jié)構(gòu)復(fù)合索引(suyn)文
29、件 職工.cdx,候選索引(suyn)index on 職工號 tag zghjgfh candidate (3)以倉庫號為第一索引(suyn),以職工號為第二索引(suyn)字段,建立一個索引(suyn)標識為ckzgh的非結(jié)構(gòu)復(fù)合索引(suyn)文件,唯一索引(suyn)Index on 倉庫號+職工號 tag ckzgh of sy_test.cdx unique例 用命令為職工.dbf建立(jinl)索引第42頁/共122頁第四十三頁,共122頁。2、使用(shyng)索引 與表同名的結(jié)構(gòu)化索引文件在打開表的同時自動打開,但對于單索引文件和非結(jié)構(gòu)索引文件,則必須(bx)專門打開。(1)
30、打開(d ki)索引文件【格式1】 use index 在打開表的同時打開與之相關(guān)的一系列索引文件【格式2】 set index to 在表已打開的情況下,打開與之相關(guān)的一系列索引文件【例】 打開剛才建立的索引文件sy_test.idx和sy_test.cdxuuse 職工.dbf index sy_test.idx, sy_test.cdxuset index to sy_test.idx, sy_test.cdx第43頁/共122頁第四十四頁,共122頁。2、使用(shyng)索引(2)指定(zhdng)當前索引【格式(g shi)】 set order to | tag of 【功能】設(shè)
31、置對排序起作用的索引第44頁/共122頁第四十五頁,共122頁。 find | 【功能】在已打開索引文件的表中快速搜索 索引表達式的值與 | 相匹配的第一條記錄。若查找成功,記錄指針指向(zh xin)該記錄,found()為真,否則,記錄指針指向(zh xin)表文件結(jié)束標識,found()為假。 seek 功能(gngnng)同find2、使用索引(3)使用索引快速定位第45頁/共122頁第四十六頁,共122頁。2、使用(shyng)索引(4)關(guān)閉(gunb)索引文件【方式1】 關(guān)閉(gunb)表文件 關(guān)閉(gunb)結(jié)構(gòu)復(fù)合索引文件【方式2】 關(guān)閉(gunb)索引命令 close ind
32、exes set index to 關(guān)閉非結(jié)構(gòu)復(fù)合索引和單索引文件。第46頁/共122頁第四十七頁,共122頁。2、使用(shyng)索引(5)刪除(shnch)索引【方式1】 表設(shè)計器中手動刪除【方式2】 命令方式 delete tag of | all 刪除復(fù)合索引(suyn) delete file 刪除單索引(suyn)第47頁/共122頁第四十八頁,共122頁。第48頁/共122頁第四十九頁,共122頁。數(shù)據(jù)完整性一般包括(boku):實體完整性、域完整性、參照完整性(1)實體完整性 指表中記錄的唯一性,即不允許有重復(fù)(chngf)的記錄;一般利用主關(guān)鍵字(主索引)或候選關(guān)鍵字(候選
33、索引)來保證表中記錄的唯一性。 (2)域完整性 指字段的取值應(yīng)滿足(mnz)相應(yīng)的條件。如:數(shù)據(jù)類型的要求,字段有效性規(guī)則等。3.4.1數(shù)據(jù)完整性第49頁/共122頁第五十頁,共122頁。(3)參照完整性 參照完整性與表之間的關(guān)聯(lián)有關(guān),其含義是:當插入、刪除或修改一個表中的數(shù)據(jù)時,通過參照引用相互(xingh)關(guān)聯(lián)的另一個表中的數(shù)據(jù),來檢查對表的數(shù)據(jù)操作是否正確. 數(shù)據(jù)完整性一般(ybn)包括:實體完整性、域完整性、參照完整性 參照完整性是關(guān)系數(shù)據(jù)庫管理系統(tǒng)的一個很重要的功能。在Visual Foxpro中為了建立參照完整性,必須(bx)首先建立表之間的聯(lián)系(關(guān)系)。 第50頁/共122頁第五
34、十一頁,共122頁。3.4.2 建立(jinl)表之間的聯(lián)系 在關(guān)系數(shù)據(jù)庫中一般通過(tnggu)連接表與表之間的字段來體現(xiàn)和表示聯(lián)系。一個表中的一條記錄,在另一個表中只有一條記錄與之對應(yīng),且要求(yoqi)兩個表都必須具有相同索引字段,且索引字段為主索引或候選索引一個表中的一條記錄,在另一個表中有多條記錄與之對應(yīng),且要求兩個表都必須具有相同索引字段,且一方索引字段為主索引或候選索引,多方索引字段為普通索引。一對一關(guān)系:一對多關(guān)系:兩個表之間的關(guān)系主要有兩種:建立表之間的關(guān)系一般在數(shù)據(jù)庫設(shè)計器中進行第51頁/共122頁第五十二頁,共122頁。【例】訂貨數(shù)據(jù)庫中有倉庫、職工、訂購單、供應(yīng)商四個表
35、,請分別建立(jinl)、修改各個有關(guān)聯(lián)的表之間的聯(lián)系 第52頁/共122頁第五十三頁,共122頁。3.4.3設(shè)置(shzh)參照完整性建立參照(cnzho)完整性之前必須首先清理數(shù)據(jù)庫 菜單(ci dn)“數(shù)據(jù)庫” - “清理數(shù)據(jù)庫”命令 pack database然后用鼠標右擊表之間聯(lián)系線,右鍵菜單中選擇“編輯參照完整性” 第53頁/共122頁第五十四頁,共122頁。第54頁/共122頁第五十五頁,共122頁。第55頁/共122頁第五十六頁,共122頁。第56頁/共122頁第五十七頁,共122頁。第57頁/共122頁第五十八頁,共122頁。 利用數(shù)據(jù)庫設(shè)計(shj)器建立的表之間的聯(lián)系是永
36、久關(guān)系,還可以使用命令建立表之間的臨時聯(lián)系。3.4.2 表之間的聯(lián)系(linx)set relation to into 在當前工作區(qū)的表與指定表名的表建立臨時關(guān)系。例:通過職工號索引建立職工表與訂購單之間的臨時關(guān)系use 職工.dbf in 1 order 職工號use 訂購單.dbf in 2 order 職工號set relation to 職工號 into 訂購單第58頁/共122頁第五十九頁,共122頁。第59頁/共122頁第六十頁,共122頁。第60頁/共122頁第六十一頁,共122頁。第61頁/共122頁第六十二頁,共122頁。第62頁/共122頁第六十三頁,共122頁。第63頁
37、/共122頁第六十四頁,共122頁。第64頁/共122頁第六十五頁,共122頁。第65頁/共122頁第六十六頁,共122頁。第66頁/共122頁第六十七頁,共122頁。第67頁/共122頁第六十八頁,共122頁。第68頁/共122頁第六十九頁,共122頁。第69頁/共122頁第七十頁,共122頁。第70頁/共122頁第七十一頁,共122頁。第71頁/共122頁第七十二頁,共122頁。第72頁/共122頁第七十三頁,共122頁。第73頁/共122頁第七十四頁,共122頁。第74頁/共122頁第七十五頁,共122頁。第75頁/共122頁第七十六頁,共122頁。第76頁/共122頁第七十七頁,共12
38、2頁。第77頁/共122頁第七十八頁,共122頁。第78頁/共122頁第七十九頁,共122頁。第79頁/共122頁第八十頁,共122頁。第80頁/共122頁第八十一頁,共122頁。第81頁/共122頁第八十二頁,共122頁。第82頁/共122頁第八十三頁,共122頁。第83頁/共122頁第八十四頁,共122頁。第84頁/共122頁第八十五頁,共122頁。第85頁/共122頁第八十六頁,共122頁。第86頁/共122頁第八十七頁,共122頁。第87頁/共122頁第八十八頁,共122頁。第88頁/共122頁第八十九頁,共122頁。第89頁/共122頁第九十頁,共122頁。第90頁/共122頁第九十
39、一頁,共122頁。第91頁/共122頁第九十二頁,共122頁。第92頁/共122頁第九十三頁,共122頁。第93頁/共122頁第九十四頁,共122頁。第94頁/共122頁第九十五頁,共122頁。第95頁/共122頁第九十六頁,共122頁。第96頁/共122頁第九十七頁,共122頁。第97頁/共122頁第九十八頁,共122頁。第98頁/共122頁第九十九頁,共122頁。12、記錄數(shù)據(jù)的統(tǒng)計(tngj)與計算(1)求記錄(jl)個數(shù)命令count 【格式(g shi)】count FOR to 【功能】統(tǒng)計在指定范圍內(nèi)滿足條件的記錄的個數(shù),并可以把結(jié)果賦值給內(nèi)存變量【例】 統(tǒng)計職工表中工資大于1300的職工數(shù) count for 工資1300 to gzs ?gzs第99頁/共122頁第一百頁,共122頁。12、記錄(jl)數(shù)據(jù)的統(tǒng)計與計算(2)求和(qi h)命令sum【例】統(tǒng)計倉庫(cngk)號為“WH2”的職工的總工資sum 工資 for 倉庫(cngk)號=WH2 to zgz? WH2的總工資=, zgz 【格式】sum FOR to 【功能】對數(shù)值型表達式指定的字段或字段表達式累加求和,并可以把結(jié)果賦值給內(nèi)存變量第100頁/共122頁第一百零一頁,共122頁。12、記錄(jl)數(shù)據(jù)的統(tǒng)計與計算(3)求平均值命令(mng lng)average【例】統(tǒng)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年銷售員績效考核與獎懲制度勞務(wù)用工協(xié)議3篇
- 建筑工程供貨合同
- 2025年校園運動場地設(shè)施采購及施工合同2篇
- 機房優(yōu)先施工方案
- 二零二五年度5G通信技術(shù)應(yīng)用合同4篇
- 2025年度個人旅游規(guī)劃師雇傭服務(wù)協(xié)議4篇
- 二零二五版美發(fā)店合伙人創(chuàng)業(yè)投資合作合同4篇
- 齒輪鍛件課程設(shè)計
- 課課程設(shè)計要寫哪幾步
- 基礎(chǔ)土方回填施工方案
- 2024企業(yè)答謝晚宴會務(wù)合同3篇
- 中華人民共和國文物保護法
- 節(jié)前物業(yè)安全培訓(xùn)
- 高甘油三酯血癥相關(guān)的器官損傷
- 部編二上語文第四單元美麗中國 公開課一等獎創(chuàng)新教學(xué)設(shè)計
- 病理生理學(xué)專業(yè)的疾病生理和新藥研發(fā)
- 油畫人體200張東方姑娘的極致美
- 人教A版必修五《斐波那契數(shù)列》教案及教學(xué)反思
- 風(fēng)電工程需要編寫的專項施工方案及危大工程目錄
- 商業(yè)計劃書(BP)財務(wù)計劃風(fēng)險控制資本退出與附錄的撰寫秘籍
- 七年級下冊《Reading 1 A brave young man》優(yōu)質(zhì)課教案牛津譯林版-七年級英語教案
評論
0/150
提交評論