數(shù)據(jù)庫的基本操作_第1頁
數(shù)據(jù)庫的基本操作_第2頁
數(shù)據(jù)庫的基本操作_第3頁
數(shù)據(jù)庫的基本操作_第4頁
數(shù)據(jù)庫的基本操作_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

數(shù)據(jù)庫的基本操作:一、 命令格式CommandKey[scope][expressionlist][forexpression1][whileexpression2]CommandKey命令關(guān)鍵字如list、displayScope范圍子句,有以下幾種形式:令Recordn記錄號n令Nextn從當前記錄起向下n條令Rest從當前記錄起到末記錄令All表中全部記錄For/while引導條件子句例:listnext5for職稱='副教授'二、 基本操作1、建立表命令 jsda.dbfCreatefilename(如包含備注型字段,則自動生成與庫文件同名的備注文件,擴展名為.fpt)表文件的擴展名為.dbf。例:creajsda?dbf創(chuàng)建表jsda?dbf,存放在foxpro的缺省目錄c:\programfiles\Microsoftvisualstudio\vfp98下。2、 記錄輸入CTRL+W存盤備注型:CTRL+pgdn通用型:編輯---插入對象3、 打開表文件Usetablename打開表文件Use?出現(xiàn)對話框,進行選擇例:usejsda 打開jsda.dbf4、 關(guān)閉表文件Use關(guān)閉當前工作區(qū)打開的表文件Closeall 關(guān)閉所有類型的文件,如表文件(.dbf)、索引文件Clearall關(guān)閉所有類型的文件Closedatabase關(guān)閉所有打開的表文件5、 顯示表結(jié)構(gòu)List/Displaystructure6、 修改表結(jié)構(gòu)Modistructure(注意:不能同時更改字段名和寬度,否則可能會造成記錄丟失)7、 記錄定位絕對定位go/goto相對定位:skip例:go3Locate[scope][forexpression1][whileexpression2]Continue兩者需配合起來使用8、 顯示記錄List|Display[scope][fieldsfieldlist][forexpression1][whileexpression2][off][noconsole][toprinter|tofilename]9、 追加記錄Append[blank] 在表文件尾添加記錄/空記錄10、 插入記錄Insert[before][blank] 在當前記錄之后/前插入記錄(空記錄)11、加刪除標記Delete[scope][forexpression1][whileexpression2]例:delenext512、恢復刪除Recall[scope][forexpression1][whileexpression2]例:recallfor職稱=‘工程師'13、物理刪除(刪除所有帶刪除標記的記錄)Pack14、清表ZAP等價于deleall;pack15、替換記錄Replacefieldname1withexpression1[addtive][,fieldname2withexpression2[additive]…[scope][forexpression1][whileexpression2][inworkarealctablealias]例:replaceall基本工資with基本工資+200for基本工資<100016、編輯修改Edit/Change[fieldsfieldlist][scope][forexpression1][freezefieldname} 17、瀏覽編輯命令Browse[fieldsfieldlist][scope][forexpression1][freezefieldname} 18、排序命令sorttotablenameonfieldname1[/A][/D][/C][,fieldname2[/A][/D][/C]…[ASCENDING|DESCENDING][Scope][forexpression1][whileexpression2][fieldsfieldnamelist]特點:生成一個新文件記錄改變物理位置記錄按升、降序排列缺點:數(shù)據(jù)冗余花費時間長修改表中數(shù)據(jù)后,新排序的表中不會改變19、索引命令indexonexpressiontoidxfilename|tagname[ofcdxfilename][forexpression1][compact][ASCENDING|DECENDING][UNIQUE][ADDITIVE]索引:只能按照升序排列,不會生成新文件,記錄號不會改變(記錄存放的物理位置不改變)索引表示的是一種邏輯順序記錄增加、刪除時可自動調(diào)整索引:一般索引(只按照一個索引條目進行索引)idx復合索引:(結(jié)構(gòu)化復合、非結(jié)構(gòu)化復合索引)cdxindexonexpressiontofilename一般索弓Iindexonexpressiontagtagname結(jié)構(gòu)化復合索引文件(和文件名同名,擴展名是CDX)indexonexpressiontagtagnameofcdxfilename非結(jié)構(gòu)化的復合索引文件sorttofilenameonexpression1/a/d/c,expression2/a/d/c索引文件的打開:usetablenameindexidxfilename打開一般索引文件usetablenameordertagtagname打開結(jié)構(gòu)化復合索引setindextoidxfile補充打開一般索引文件setindextojsdaordertagxm補充打開結(jié)構(gòu)化復合索引文件索引文件的關(guān)閉:setindextocloseindexuse指定主索引文件和主標記setorderto[nindexnumber|idxindexfilename|[tag][tagnme[ofcdxfilename][inaworkarea|ctablealias][ASCENDING|DESCENDING]]重新索引:reindex[compact]20、索引查找命令FINDfindcexpression只能用于已索引的情況,查找與指定字符串相匹配的第一條記錄,找到后并不顯示,需使用DISP命令來顯示。如想顯示下一條,需使用SKIP命令。只能查找數(shù)值型和字符型,不能用于邏輯型和日期型。對于變量,要使用宏函數(shù)。查找字符型數(shù)據(jù)時,不需加定界符。21、 索引查找命令SEEKseekexpression[ordernindexnumber|idxindexfilename|[tag]tagname[ofcdxfilename][ASCENDING|DESCENDING]][INnworkarea|ctablealias]功能更強大,可指定主索引及升降序。與FIND命令比較:SEEK可以對字符型、數(shù)值型、日期型和邏輯型,F(xiàn)IND只對數(shù)值型和字符型進行查找;SEEK的操作數(shù)可以是表達式,F(xiàn)IND的操作數(shù)是常量;SEEK對內(nèi)存變量可以直接使用,F(xiàn)IND必須經(jīng)過宏代換;SEEK查找字符型要加引號,F(xiàn)IND不要。22、 求和命令sumsum[expressionlist][scope][forexpression1][whileexpression2][tomemvarnamelist|toarrayname]只能對數(shù)值型字段進行求和。23、 計數(shù)命令countcount[scope][forexpression1][whileexpression2][tomemvarname]統(tǒng)計符合條件的記錄條數(shù)24、 求平均數(shù)命令averageaverage[expressionlist][scope][forexpression1][whileexpression2][tomemvarnamelist|toarrayname]25、 分類匯總命令totaltotaltotablenameonfieldname[fieldsfieldnamelist][scope][forexpression1][whileexpression2]必須先對相應字段進行排序或索引,才能使用。生成一個新的表文件。26、 文件復制命令copycopytofilename[fieldsfieldlist][scope][forexpression1][whileexpression2][with]cdx][type][sdf|delimited]]可復制結(jié)構(gòu)和數(shù)據(jù)。SDF格式:標準數(shù)據(jù)格式文件。特點:字段之間不用逗號分隔開,字符型數(shù)據(jù)不用定界符括起,數(shù)值型數(shù)據(jù)的左端空格和字符型數(shù)據(jù)的右端空格均保留,各記錄長度相等DELIMITED格式:非標準數(shù)據(jù)格式文件。特點:字段之間用逗號分開,字符型數(shù)據(jù)用定界符括起,數(shù)值型數(shù)據(jù)的左端空格和字符型數(shù)據(jù)的右端空格不保留,各記錄不等長,每個記錄以回車/換行結(jié)束。復制表結(jié)構(gòu):copystrutotablenamefieldsfieldlist追加表中數(shù)據(jù):appendformsourcetablename[forexpression]任意類型的文件復制:copyfilefilename1tofilename2文件要帶擴展名。27、內(nèi)存變量操作命令定義內(nèi)存變量數(shù)組:dimensionarrayname1(nrows1[,ncolumns1])[,arrayname(nrow2[,ncolumns2])??起始下標為1,默認為?F?,只有行數(shù)時為一維數(shù)組,否則為二維數(shù)組。二維數(shù)組可以用雙下標或單下標引用。內(nèi)存變量的賦值:storeexpressiontomemvarmemvar=expression從表向數(shù)組傳送數(shù)據(jù):copytoarrayarrayname[fieldsfieldlist][scope][forexpression1][whileexpression2]將字段內(nèi)容傳送到數(shù)組各元素中,如有字段名表選項,傳送按指定字段次序進行,否則依表中字段次序跳過備注和通用型字段進行。指定數(shù)組不存在則由系統(tǒng)生成。從數(shù)組向表傳送數(shù)據(jù):appendfromarrayarrayname[forexpression][fieldsfieldlist]將符合條件的數(shù)組數(shù)據(jù)添加到當前表尾部。內(nèi)存變量的顯示:display/listmemory[likefileskeleton][toprinter|tofilefilename]likefileskeleton以通配符限定顯示范圍。內(nèi)存變量的清除:releasememvarlist清除由變量名表指定的內(nèi)存變量releaseall[extended][likeskeleton|exceptskeleton]p69clearmemory保存內(nèi)存變量:savetofilename|memomemofieldname[alllikeskeleton|allexceptskeleton]恢復內(nèi)存變量:restorefromfilename|frommemomemofieldname[additive]從內(nèi)存變量或備注字段中恢復。28、文件操作命令:顯示文件目錄dir|directory[[on]drive][[like][path][fileskeleton]][toprinter|tofilefilename](2)文件改名renamefilename1tofilename2(3)刪除文件

erasefilename|?Deletefilefilename|?(4)顯示文本文件typefilename1[toprinter|tofilefilename2][number]可顯示源程序文件、通用格式及標準格式的數(shù)據(jù)文件29、多工作區(qū)操作:(1)最多允許使用32767個工作區(qū),在每個區(qū)中某一時刻只能打開一個表。(2) 任何時刻只能選擇一個工作區(qū)成為當前工作區(qū)。(3) 對當前工作區(qū)中表的操作,不影響其他區(qū)中的表(4) 各表中數(shù)據(jù)保持獨立(5) 工作區(qū)可用數(shù)字標識,前十個工作區(qū)用字母A~J表示(6) 同一表不能在不同區(qū)同時打開(7) 默認是1區(qū)工作區(qū)的選擇和互訪:selectnworkarea|ctablealias別名和字段名間用符號.或->連接。1-10默認為A~J30、表的更新操作updateonfieldname1fromfilenamereplacefieldname2withexpression[,fieldname3withnexpression2…][random]用from子句指定的表去更新但前工作表的內(nèi)容,更新表和工作表都必須排序或索引過。31、表間建立關(guān)聯(lián)setrelationto[expressionintonworkarea1|ctablealias1[,expression2intonwrokarea2lctablealias2…[[additive]]通過共有字段或者記錄號建立關(guān)聯(lián),前一種需要建立索引文件取消關(guān)聯(lián):setrelationtosetrelationoffintonworkarealctablealias132、建立表間連接joinwithnworkarea1lwithctablealias1tofilenameforexpression[fieldsfieldlist]將不同表的內(nèi)容連接生成一個新表。三、程序設(shè)計基礎(chǔ)事件程序結(jié)構(gòu):1、順序結(jié)構(gòu)依次逐條執(zhí)行程序中語句的程序結(jié)構(gòu)2、選擇結(jié)構(gòu)(分支結(jié)構(gòu))IFEXPRESSIONCOMMAND1[ELSECOMMAND2]ENDIF可嵌套

DOCASECASEEXPRESSION1COMMAND1CASEEXPRESIONNCOMMANDN[OTHERWISECOMMANDN+1]ENDCASE可嵌套3、循環(huán)結(jié)構(gòu)DOWHILEEXPRESSIONCOMMANDS[LOOP][EXIT]ENDDOFORMEMVARNAME=NINTIALVALUETONFINALVALUE[STEPNINCREMENT]<STATEMENT>[EXIT][LOOP]ENDFOR|NEXTSCAN[SCOPE][FOREXPRESSION1][WHILEEXPRESSION2][COMMANDS][EXIT][LOOP]ENDSCAN4、過程及調(diào)用在同一程序的不同處,或在不同程序中重復出現(xiàn)具有相同功能的程序段。解決的辦法是單獨設(shè)計這些共用程序段。這些共用的程序

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論