2023年Vfp專升本講稿_第1頁
2023年Vfp專升本講稿_第2頁
2023年Vfp專升本講稿_第3頁
2023年Vfp專升本講稿_第4頁
2023年Vfp專升本講稿_第5頁
已閱讀5頁,還剩132頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

Visualfoxpro數(shù)據(jù)庫管理系統(tǒng)考核內(nèi)容:數(shù)據(jù)庫基礎(chǔ)知識VFP概述數(shù)據(jù)類型與函數(shù)數(shù)據(jù)庫和表的操作程序設(shè)計SQL語言的使用表單的設(shè)計考試題型:(70分)一、填空題(10分)5個題,共10分,數(shù)據(jù)庫基礎(chǔ)部分,前四章的內(nèi)容二、寫出運營結(jié)果(24分)8個題,每題3分,都是程序。三、完善程序(24分)8個題,每題3分,共24分,都是程序四、改錯(12分)4個題,每題3分,都是程序。判斷2-100以內(nèi)的數(shù)是否是質(zhì)數(shù)。求1-100的累加和。求100!打印如下圖形:**********或*********第一章VisualFoxpro基礎(chǔ)1.1數(shù)據(jù)庫基礎(chǔ)知識一、數(shù)據(jù)、數(shù)據(jù)解決、信息、數(shù)據(jù)管理的含義1)數(shù)據(jù):是指存儲在某一種媒體上能被辨認物理符號。隨著信息的發(fā)展,數(shù)據(jù)不再是單純的數(shù)值型,即0-9,正負號。數(shù)據(jù)已經(jīng)擴展了,涉及文本、圖形、聲音、視頻等。2)數(shù)據(jù)解決數(shù)據(jù)解決是對數(shù)據(jù)進行收集、加工解決的一個過程。3)信息數(shù)據(jù)通過加工解決,得到故意義的數(shù)據(jù),叫信息。原始數(shù)據(jù):出生日期。加工得來的數(shù)據(jù):年齡。4)數(shù)據(jù)管理是指對數(shù)據(jù)進行收集、加工、整理的一些工作2.數(shù)據(jù)管理的發(fā)展階段1)手工管理階段數(shù)據(jù)和程序都不保存,數(shù)據(jù)和程序不獨立。數(shù)據(jù)冗余度大。2)文獻管理階段數(shù)據(jù)以文獻方式存儲,按文獻名來使用數(shù)據(jù)。程序與數(shù)據(jù)有一定的獨立性,分開存儲,數(shù)據(jù)保存在存儲器中。3)數(shù)據(jù)庫階段程序與數(shù)據(jù)獨立,程序發(fā)生變化,數(shù)據(jù)不變,數(shù)據(jù)發(fā)生變化程序不變。。實現(xiàn)數(shù)據(jù)共享性,減少數(shù)據(jù)冗余。數(shù)據(jù)獨立性高,數(shù)據(jù)與程序分開,互不影響。有專門的數(shù)據(jù)庫管理系統(tǒng)(DBMS)來管理、維護數(shù)據(jù)庫的數(shù)據(jù)。4)分布式數(shù)據(jù)庫是計算機網(wǎng)絡技術(shù)和數(shù)據(jù)庫技術(shù)的結(jié)合的產(chǎn)物。5)面向?qū)ο蟮臄?shù)據(jù)庫系統(tǒng)引入了類、對象、方法、屬性。二、基本概念1.數(shù)據(jù)庫(DB)是指存儲在計算機中的互相關(guān)聯(lián)的結(jié)構(gòu)化的相關(guān)數(shù)據(jù)集合。數(shù)據(jù)庫中不僅存放數(shù)據(jù),并且存儲數(shù)據(jù)與數(shù)據(jù)之間的聯(lián)系。2)數(shù)據(jù)庫應用系統(tǒng)開發(fā)人員運用數(shù)據(jù)庫管理系統(tǒng)開發(fā)的面向某一應用的軟件系統(tǒng),比如工資管理系統(tǒng)。3)數(shù)據(jù)庫管理系統(tǒng)(DBMS)是用于管理、維護、建立、使用數(shù)據(jù)庫的系統(tǒng)軟件。4)數(shù)據(jù)庫系統(tǒng)(DBS)是一個應用了數(shù)據(jù)庫技術(shù)的計算機系統(tǒng)。數(shù)據(jù)庫系統(tǒng)由五大部分構(gòu)成:硬件系統(tǒng)、數(shù)據(jù)庫集合、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫管理員和用戶。DBA:數(shù)據(jù)庫管理員。以上所講的幾部分,包含關(guān)系如下:DBS包含DBMS和DB數(shù)據(jù)庫管理系統(tǒng)(dbms)是數(shù)據(jù)庫系統(tǒng)的核心。2.數(shù)據(jù)庫系統(tǒng)的特點1)實現(xiàn)數(shù)據(jù)共享,減少了數(shù)據(jù)冗余2)采用特定的數(shù)據(jù)模型。層次模型、網(wǎng)狀模型關(guān)系模型。3)具有較高的數(shù)據(jù)獨立性分為物理獨立性和邏輯獨立性。4)有統(tǒng)一的數(shù)據(jù)控制功能。數(shù)據(jù)并發(fā)。三、數(shù)據(jù)模型1.實體的描述1)實體客觀存在的可以互相區(qū)別事物。實體可以是具體的,也可以是抽象的。例如:一臺電腦、一部電話、一次比賽、一次借閱,一次訂貨2)屬性用來描述實體的特性稱為屬性。用于區(qū)別其他事物的特性。學生實體(編號、姓名,班級,性別)這里的屬性就是VFP中表的字段。3)實體集和實體型.實體集:同類實體的集合。在VFP中,用表存儲實體集。實體型:同類實體所有屬性的集合,實體型,在VFP中就是表中所有字段,二維表中的標題。學號姓名性別99001張一男99002李四女99003王東男2.實體之間的聯(lián)系(實體之間的相應關(guān)系)聯(lián)系的類型如下:1)一對一的聯(lián)系表達一個實體集中的一個實體,相應另一個實體集中的一個實體,如班級與班長,公司與廠長。2)一對多的聯(lián)系表達一個實體集中的一個實體,相應另一個實體集中的多個實體。比如:學生和成績。3)多對多的聯(lián)系例如:學生和課程學生和教師教師和課程運動員和比賽項目3.數(shù)據(jù)模型為了反映事物自身及事物之間的各種聯(lián)系,數(shù)據(jù)庫中的數(shù)據(jù)必須有一定的結(jié)構(gòu),這種結(jié)構(gòu)稱為數(shù)據(jù)模型。數(shù)據(jù)模型不僅表達事物自身的數(shù)據(jù),并且表達數(shù)據(jù)之間的聯(lián)系。分為三種:1)層次模型系教研室系教研室課程教師特點:除根結(jié)點外,每一個結(jié)點有且只能有一個父結(jié)點。2)網(wǎng)狀模型用網(wǎng)狀結(jié)構(gòu)來表達實體結(jié)構(gòu)。課程號課程號課程學生教員任課選課特點:網(wǎng)狀模型突破了層次模型的兩點限制:允許結(jié)點有多于一個的父結(jié)點,可以有一個以上的結(jié)點沒有父結(jié)點。3)關(guān)系模型用二維表格的形式表達實體和實體之間聯(lián)系的數(shù)據(jù)模型稱為關(guān)系模型在關(guān)系模型中,操作的對象和結(jié)果都是關(guān)系,職工號姓名性別001王軍女002陳明男特點:關(guān)系就是二維表格。1.2關(guān)系數(shù)據(jù)庫VFP是一種微機上的32位的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。一、關(guān)系術(shù)語1)關(guān)系:一個關(guān)系就是一張二維表,在VFP中存儲為一個文獻,稱為表,擴展名為.dbf。2)元組:二維表中行,元組在VFP的表中叫記錄。3)屬性:二維表中列。在VFP中叫字段,屬性名叫字段名,屬性值叫字段值。4)域:屬性的取值范圍叫域。月份:取值為:1月至12月5)關(guān)鍵字:可以惟一區(qū)別其他實體的屬性叫關(guān)鍵字。學生(學號,姓名,性別)6)外部關(guān)鍵字:是指在第一表不是關(guān)鍵字,但在第二表中是關(guān)鍵字的。通過外部關(guān)鍵字用來聯(lián)系兩個表的。成績(學號,課號,成績)學生(學號,姓名,性別)二.關(guān)系的特點1)關(guān)系必須規(guī)范化,每一列都是不可再分的單元。學號姓名成績數(shù)學語文英語2)同一個關(guān)系不能出現(xiàn)同名屬性。3)關(guān)系中不能出現(xiàn)完全相同的行。4)關(guān)系中行與列的順序隨意,沒有影響。三、關(guān)系的運算重要有兩種:1、傳統(tǒng)的集合運算(必須有相同的關(guān)系模式,即相同結(jié)構(gòu))并:由屬于這兩個關(guān)系的元組成的集合。差:設(shè)有兩個相同的元組R和S,R差S的結(jié)果是由屬于R但不屬于S的元組組成的集合。交:設(shè)有兩個相同的元組R和S,它們的交是由屬于R又屬于S的元組組成。2、專門的關(guān)系運算:1)選擇從關(guān)系中找出滿足條件的元組的操作叫選擇。顯示學生表中性別為男的所有記錄。LISTFOR性別=”男”選擇是從行的角度進行的運算,水平方向抽取記錄。2)投影從關(guān)系中抽取若干個屬性組成新的關(guān)系的操作。從列的角度而言,垂直分解。比如:查詢學生表的學號和姓名。Listfields學號,姓名既有選擇又有投影。對于選擇在VFP中使用for來限制或while。對于投影在VFP中使用fields操作。Listfields學號,姓名for性別=”男”3)聯(lián)接是關(guān)系的橫向結(jié)合,聯(lián)接運算將兩個關(guān)系模式拼接成一個更寬的模式。生成的新關(guān)系中包含滿足條件的元組。等值聯(lián)接:在聯(lián)接運算中,按照字段值相應相等為條件進行的聯(lián)接操作稱為等值聯(lián)接。自然聯(lián)接:去掉反復屬性的等值聯(lián)接(最常用)選擇和投影都是對一個關(guān)系而言的。聯(lián)接至少兩個聯(lián)系。比如:學生(學號,姓名)成績(學號,成績)生成的表(學號,姓名,成績)在VFP中有兩個聯(lián)接命令SETRELATIONTO(shè):邏輯聯(lián)接JOINWITH:物理聯(lián)接**********補充知識************VFP的命令格式構(gòu)成:格式如下:命令動詞[范圍][for/while條件]1)命令動詞顯示記錄:list/display追加記錄:append刪除記錄:delete查詢:locat(yī)e/seek/find插入記錄:insert2)范圍范圍是對記錄而言的,。all:表達操作的記錄范圍為所有記錄。所有元組。。nextN:從當前記錄開始連續(xù)N條記錄。。rest:從當前記錄開始到尾記錄。。recordn表達第N條記錄約定:假如省略范圍,有FOR,則范圍為ALL。3)for/while<條件>此處是選擇操作,for和while是條件關(guān)鍵字。For:表達從范圍內(nèi)找滿足條件的所有記錄。While:表達選擇,但碰到一個不滿足記錄即停止。一般不用。4)其他參數(shù)toprint:送到打印機tofile文獻名:送到文獻中***********************************第二章VFP系統(tǒng)初步一、VFP啟動與退出1、啟動系統(tǒng):通過開始菜單程序---MICROSOFTVISUALFOXPRO6.02、退出系統(tǒng)(4種方法)1)用鼠標左鍵單擊VFP標題欄右面的關(guān)閉窗口按鈕2)從“文獻”下拉菜單中選擇“退出”3)單擊主窗口左上方的狐貍圖標,在下拉菜單中選擇”關(guān)閉”,或者按ALT+F4。4)在命令窗口中鍵入QUIT(按ENTER鍵)。二、VFP的窗口構(gòu)成:1.標題欄2.菜單欄(動態(tài)的)3.工具欄:默認界面涉及“常用”、“表單設(shè)計器”工具欄。4.狀態(tài)欄:顯示當前打開的數(shù)據(jù)庫和表,當前記錄號/總記錄數(shù)5.內(nèi)容區(qū):(顯示執(zhí)行結(jié)果)6.命令窗口:用于輸入命令,命令輸入完畢后,按回車鍵立刻執(zhí)行命令,1)隱藏命令窗口:(1)單擊命令窗口右上角的關(guān)閉按鈕關(guān)閉它。(2)按CTRL+F4隱藏命令窗口2)顯示命令窗口(1)單擊“常用”工具欄上的“命令窗口”按鈕。(2)通過“窗口”菜單下的“命令窗口”選項可以重新打開。(3),按CTRL+F2顯示命令窗口7、滾動條三、VFP有三種工作方式:1)菜單方式(交互式)2)命令方式(交互式)3)程序方式四、項目管理器:是VFP中用來組織管理各類文獻的容器。是文獻、數(shù)據(jù)、文檔和VFP對象的集合,擴展名為.pjx。一、創(chuàng)建項目的兩種途徑:1)僅創(chuàng)建一個項目文獻,用來分類管理其他文獻2)使用應用程序向?qū)闪艘粋€項目和一個VFP應用程序框架二、打開和關(guān)閉項目1)打開項目“文獻”菜單“打開”文件類型為“項目”----選中要打開的項目--單擊“擬定”按鈕2)關(guān)閉項目單擊項目管理器右上角的“關(guān)閉”按鈕三、項目管理器選項卡:(共有6個)1)數(shù)據(jù)選項卡:數(shù)據(jù)庫(.DBC)、查詢(.QPR)、自由表(.DBF)、視圖等。2)文檔選項卡:表單(.SCX)、報表(.FRX)、標簽(.LBL)3)代碼選項卡:程序(.PRG),api庫,應用程序(.app)4)類選項卡:類文獻(.VCX)5)其他選項卡:菜單文獻、圖片文獻、其他文獻6)所有:以上各類文獻的集中顯示。四、項目管理器基本操作(第8頁)1)在項目中創(chuàng)建文獻:選擇要新建文獻類型,再單擊“新建”按鈕2)在項目中加入文獻:選擇要添加文獻的類型,再單擊“添加”按鈕3)在項目中修改文獻:先選擇要修改的文獻,再單擊“修改”按鈕4)在項目中移去文獻:選擇要移去的文獻,再單擊“移去”按鈕,文獻會從項目中移去,但不會從磁盤中刪除文獻,或按“刪出”按鈕,文獻會從項目中移去并從磁盤中刪除文獻5)為文獻添加說明在“項目管理器”中選定文獻,從“項目”菜單中選擇“編輯說明”,在編輯說明對話框中鍵入對文獻的說明,單擊“擬定”按鈕。6)查看表中的數(shù)據(jù)從項目中可以瀏覽項目中表的內(nèi)容。若要瀏覽表,選擇“數(shù)據(jù)”選項卡,選定一個表并單擊“瀏覽”按鈕。五、項目管理器的命令按鈕(不可用時是灰色)1.新建:創(chuàng)建一個新文獻或?qū)ο?.添加:把已有的對象添加到項目中3.修改:在合適的設(shè)計器中打開選定項4.瀏覽:在瀏覽窗口中打開一個表5.關(guān)閉:關(guān)閉一個打開的數(shù)據(jù)庫6.打開:打開一個數(shù)據(jù)庫7.移去:從項目中移去選定文獻或?qū)ο?.連編:編譯一個項目或應用程序9.預覽:在打印方式下顯示選定的報表或標簽。10.運營:執(zhí)行選定的查詢、表單或程序六、定制項目(改變項目的外觀)1)移動、縮放、折疊(項目管理器上右上角的向上箭頭)2)拆分項目管理器-先折疊項目管理器拖出選項卡3)停放項目管理器將項目管理器拖到VFP主窗口的上部就可以像工具欄同樣顯示在主窗口的頂部。五、Vfp中常用的文獻擴展名.pjx:項目文獻.pjt:項目備注文獻.dbf:表文獻.fpt:表備注文獻.dbc:數(shù)據(jù)庫文獻.dct:數(shù)據(jù)庫備注文獻.dcx:數(shù)據(jù)庫索引文獻.frx:報表文獻.frt:報表備注文獻.scx:表單文獻.sct:表單備注文獻.lbx:標簽文獻.lbt:標簽備注文獻.qpr:查詢文獻.mnx:菜單源文獻.mnt:菜單的備注文獻.mpr:菜單生成文獻.prg:程序文獻.app:生成的應用程序文獻.exe:可執(zhí)行文獻*******總結(jié)***********************:一、數(shù)據(jù)管理的發(fā)展1.手工管理2.文獻管理3.數(shù)據(jù)庫管理4.分布式數(shù)據(jù)庫5.面向?qū)ο髷?shù)據(jù)庫二、數(shù)據(jù)庫管理系統(tǒng)1.數(shù)據(jù)庫2.數(shù)據(jù)庫應用系統(tǒng)3.數(shù)據(jù)庫管理系統(tǒng)4.數(shù)據(jù)庫系統(tǒng)DB,DBMS,DBS三、數(shù)據(jù)庫管理系統(tǒng)的特點1.數(shù)據(jù)共享,減少了數(shù)據(jù)冗余2.數(shù)據(jù)獨立性高3.數(shù)據(jù)模型4.具有統(tǒng)一的控制管理功能四、數(shù)據(jù)模型1.實體2.屬性3.實體集,實體型4.實體與實體之間聯(lián)系一對一,一對多,多對多。5.數(shù)據(jù)模型(分為三種)層次模型,。網(wǎng)狀模型,關(guān)系模型。五、關(guān)系模型1.關(guān)系2.元組3.屬性4.域5.關(guān)鍵字6.外部關(guān)鍵字7.關(guān)系的特點六、關(guān)系運算分為兩種:傳統(tǒng)的集合運算:并、并、差、除專門的關(guān)系運算選擇,對行操作,for投影,對列操作,fields聯(lián)接,兩個表,橫向擴展,join和setrelation七、VFP啟動與退出退出有4種方法八、VFP窗口的構(gòu)成標題欄、菜單欄(動態(tài))、工具欄、狀態(tài)欄、命令窗口(ctrl+f2、ctrl+f4)、顯示區(qū)、滾動條九、VFP有三種工作方式:菜單方式、命令方式、程序方式十、項目管理器(.pjx)創(chuàng)建、打開、關(guān)閉、6個選項卡、項目管理器基本操作、命令按鈕、定制項目。第三章數(shù)據(jù)與數(shù)據(jù)運算在解決數(shù)據(jù)時,除了需要表中的數(shù)據(jù)外,還經(jīng)常要解決其他數(shù)據(jù),根據(jù)解決數(shù)據(jù)的形式來劃分,數(shù)據(jù)可以分為四種形式:常量、變量、表達式、函數(shù)(一)、常量(6種):在程序運營中其值不發(fā)生變化的量。數(shù)值型常量:用來表達一個數(shù)的大小,由數(shù)字0~9、小數(shù)點和正負號組成。例:12、23.56、-6.78注:在內(nèi)存中用8個字節(jié)表達,表達很大或很小數(shù)時用科學記數(shù)法表達,例:5.678E12表達5.678×1012,1.6E-12表達1.6×10-12貨幣型常量用來表達貨幣值,其書寫格式與數(shù)值型常量類似,但要加一個前置的符號“$”,采用4位小數(shù),多于4位小數(shù)將四舍五入。沒有科學記數(shù)法形式,在內(nèi)存中占用8個字節(jié)例:$2423.5454字符型常量常稱為字符串,表達方法是用半角單引號、雙引號、方括號作為定界符把字符串擴起來,定界符必須成對匹配,假如定界符自身也是字符串的內(nèi)容,則需要用另一種定界符為該字符串定界。注:不包含任何字符的字符串("")叫空串。與包含空格的字符串("")不同。?"計算","123",[456],['ABC'"123"]執(zhí)行結(jié)果:計算123456'ABC'"123"??"學習",[表達方法]學習表達方法?----在光標的下一行顯示??---在光標所在的當前行顯示?123??“5667”1235667日期型常量定界符是一對花括號,花括號內(nèi)涉及年、月、日三部分,各部分用分隔符分隔。分隔符可以是斜杠(/)連字號(—)、句點(.)和空格,斜杠是系統(tǒng)默認的分隔符。兩種格式1)、傳統(tǒng)的日期格式默認格式為美國日期格式“MM/DD/YY(月/日/年),傳統(tǒng)日期格式中的月、日各為2位數(shù)字,而年份可以是2位數(shù)字,也可以是4位數(shù)字。{10/08/1978}、{10-08-1978}、{100878}注:此格式受命令SETDATETO和SETCENTURYTO設(shè)立的影響。只能在SETSTRICTDATETO0狀態(tài)下使用。2)、嚴格的日期格式{^YYYY-MM-DD},能表達一個確切的日期,不受SETDATE等語句的影響,年月日的順序不能顛倒,不能缺省,日期型用8個字節(jié)表達,取值范圍{^0001-01-01}~{^9999-12-31},可以在SETSTRICTDATETO命令的任何狀態(tài)下使用。{^2023-11-13}3)影響日期格式的設(shè)立命令(1)命令格式:SETMARKTO[日期分隔符]功能:用于設(shè)立日期型數(shù)據(jù)的分隔符,若省略“日期分隔符“表達用默認的斜杠分隔符。Setmarkto“”Setdate“mdy”?{^2023-10-20}10/20/2023命令格式:SETDATE[TO(shè)]AMERICAN|ANSI|YMD…功能:設(shè)立日期的顯示格式Setmarkto?{^2023-10-20}(3)設(shè)立日期是否顯示4位年份命令格式:SETCENTURYON/OFF[TO世紀值][ROLLOVER[年份參照值]]功能:用于設(shè)立顯示日期型數(shù)據(jù)時是否顯示世紀。TO(shè)選項:擬定用2位數(shù)字表達年份所處的世紀。ROLLOVER:假如該日期的2位數(shù)字年份大于等于[年份參照值],則它們所處的世紀即為[世紀值],否則為[世紀值]+1Setcenton?{10/20/98}10/20/1998Setcentto19roll60?{10/20/98},{10/20/50},{10/20/60}10/20/199810/20/205010/20/1960(4)命令格式:SETSTRICTDATETO[0|1|2]功能:用于設(shè)立是否對日期格式進行檢查。0:不進行嚴格的日期格式檢查1:進行嚴格的日期檢查,是系統(tǒng)默認的設(shè)立2:進行嚴格的日期檢查,并且對CTO(shè)D()和CTO(shè)T()函數(shù)的格式也有效日期時間型常量涉及日期和時間兩部分內(nèi)容{日期,時間}<日期>部分與日期型常量相似<時間>格式為[HH[:MM[:SS]][A|P]]HH-小時MM-分SS-秒,默認值為12:00:00,A/AM-上午,P/PM-下午,時間的的取值范圍是:00:00:00AM~11:59:59PM?{^2023-03-22,11:30P},{^1999-01-01,},{^2023-10-10,3}邏輯型常量只有邏輯真和邏輯假兩個值,邏輯真有.T.,.t.,.Y.,.y.邏輯假有.F.,.f.,.N.,.n.(二)變量:在程序運營過程中其值可以發(fā)生變化的量每個變量都有一個名字,以字母、漢字、下劃線開頭,其余字符任意。(DF3,副12、_SFGF)1、變量的數(shù)據(jù)類型:字符型(C)、數(shù)值型(N)、貨幣型(Y)、邏型(L)、日期型(D)、日期時間型(T)2、變量的種類(字段變量、內(nèi)存變量)字段變量:表中的每個字段對不同記錄相應不同的的值,因此字段名是變量,只有表打開時,才干使用。內(nèi)存變量:(簡樸內(nèi)存變量、數(shù)組變量)簡樸內(nèi)存變量:每一個變量都有一個名字(以字母,漢字,下劃線開頭)假如內(nèi)存變量與字段變量同名時,訪問內(nèi)存變量時,必須在變量名前加前綴M.(或M->),否則系統(tǒng)訪問同名的字段變量.1、內(nèi)存變量的建立(不必事先定義,可直接建立)命令格式1)<內(nèi)存變量名>=<表達式>一次只能給一個變量賦值。A=12B=”a12”2)STORE〈表達式〉TO(shè)〈內(nèi)存變量名表〉一次可以給多個變量賦同一個值。STORE23TOA,B,CSTORE.T.TOAB,BC注:內(nèi)存變量類型是由變量值的類型擬定的。2、數(shù)組變量是內(nèi)存中連續(xù)的一片存儲區(qū)域,它由一系列元素組成,每個數(shù)組元素可以通過下標來訪問,每個數(shù)組元素相稱一個簡樸變量,可以給各個元素賦值,且各個元素的數(shù)據(jù)類型可以不同。創(chuàng)建數(shù)組(使用前必須先定義)DIMENSION<數(shù)組名>(下標1[,下標2][,。。。。])DECLARE<數(shù)組名>(下標1[,下標2][,。。。。])創(chuàng)建后系統(tǒng)自動為每個數(shù)組元素賦以邏輯假.F.例:一維數(shù)組X具有5個元素:X(1)、X(2),X(3),X(4),X(5)二維數(shù)組Y具有6個元素y(2,3):Y(1,1)、Y(1,2),Y(1,3)、Y(2,1),Y(2,2)、Y(2,3)使用數(shù)組應注意的問題:1)、在一切使用簡樸變量的地方,均可以使用數(shù)組元素2)、在賦值和輸入語句中使用數(shù)組名時,表達將同一值賦給所有數(shù)組元素。3)、在同一環(huán)境下,數(shù)組名不能與簡樸變量同名。4)、在賦值語句中的表達式位置不能出現(xiàn)數(shù)組名5)、可以用一維數(shù)組的形式訪問二維數(shù)組。例如:數(shù)組Y中各元素用一維數(shù)組形式可依次表達為:Y(1)、Y(2)、Y(3)、Y(4)、Y(5)、Y(6),其中Y(4)與Y(2,1)是同一變量。3、內(nèi)存變量常用命令1)、內(nèi)存變量的賦值:格式1STO(shè)RE〈表達式〉TO(shè)〈變量名表〉格式2〈內(nèi)存變量名〉=〈表達式〉2)、表達式值的顯示?[〈表達式表〉]:在下一行顯示,省略表達式起換行作用??[〈表達式表〉]:在當前行輸出3)內(nèi)存變量的顯示格式1:LISTMEMORY[LIKE〈通配符〉][TOPRINTER][TOFLIE〈文獻名〉]格式2:DISPLAYMEMORY[LIKE〈通配符〉][TOPRINTER][TOFLIE〈文獻名〉]功能:顯示內(nèi)存變量的當前信息,涉及變量名、作用域、類型、取值。LIKE:只顯示與通配符相匹配的內(nèi)存變量*-任意多個字符。?-任意一個字符.TOPRINTER:將顯示結(jié)果送往打印機TOFILE<文獻名>將顯示結(jié)果保存至文本文獻中,文本文獻的擴展名為.TXTLISTMEMORY:連續(xù)顯示DISPLAYMEMORY分屏顯示例:LISTMEMORY:連續(xù)顯示所有的內(nèi)存變量DISPLAYMEMORY:分屏顯示所有的內(nèi)存變量4)、內(nèi)存變量的清除格式1:CLEARMEMORY清除所有的內(nèi)存變量。格式2:RELEASE<內(nèi)存變量名表>清除指定的內(nèi)存變量。Releab,cd格式3:RELEASEALL[EXTENDED]功能與格式1相同,在程序中必須加EXTENDED才干將公共內(nèi)存變量刪除格式4:RELEASEALL[LIKE<通配符>|EXCEPT<通配符>]LIKE:清除與通配符相匹配的內(nèi)存變量EXCEPT:清除與通配符不相匹配的內(nèi)存變量例:RELEASEALLLIKEA*只清除以A開頭的所有內(nèi)存變量RELEASEALLEXCEPTA?將變量名為兩個字符,且以A開頭之外的其他內(nèi)存變量清除4、表中的數(shù)據(jù)與數(shù)組數(shù)據(jù)之間的互換1)、將表中一條記錄復制到數(shù)組中格式1:SCATTER[FIELDS<字段名表>][MEMO]TO<數(shù)組名>[BALNK]格式2:SCATTER[FIELDSLIKE<通配符>][MEMO]TO<數(shù)組名>[BALNK](1)、格式1功能:將當前記錄指定字段的第一個字段內(nèi)容開始,依次復制到數(shù)組名中的第一個數(shù)組元素開始的數(shù)組中(2)、假如不使用FIELDS短語,則復制除備注型M和通用型G之外的字段(3)、數(shù)組可以不事先創(chuàng)建,假如數(shù)組元素個數(shù)少于字段個數(shù),系統(tǒng)自動建立其余數(shù)組元素。(4)、DEMO:復制備注字段格式2的功能:(5)、FIELDSLIKE<通配符>:字段滿足〈通配符〉的復制。(6)、FIELDSEXCEPT<通配符>:字段滿足<通配符>不復制。2)、將數(shù)組復制到當前記錄中功能:從第一個數(shù)組元素開始,依次向字段名表指定的字段寫數(shù)據(jù),如省略FIELDS選項,則依次向各個字段復制,若數(shù)組元素多余字段個數(shù),多余部分被忽略,格式1:GATHERFROM<數(shù)組名>[FIELDS<字段名表>][MEMO]格式2:GATHERFROM<數(shù)組名>[FIELDSLIKE<通配符>|FIELDSEXCEPT<通配符][MEMO]MEMO:復制備注字段FIELDSLIKE<通配符>:字段滿足〈通配符〉復制FIELDSEXCEPT<通配符>:字段滿足<通配符>不復制(三)、表達式是由常量、變量、和函數(shù)通過特定的運算符連接起來的式子。1、表達式的形式單一的運算對象:(如常量、變量、或函數(shù))多個的運算對象:由運算符將運算對象連接起來形成的式子。表達式的類型:任何表達式都有一個值,根據(jù)表達式值的類型,可分為四種類型。1)、數(shù)值表達式:由算術(shù)運算符將數(shù)值型數(shù)據(jù)連接起來形成,其運算結(jié)果仍然是數(shù)值型數(shù)據(jù)。算術(shù)運算符的優(yōu)先級優(yōu)先級運算符說明1()形成表達式內(nèi)的子表達式2**或^乘方運算3*、/、%乘、除運算、求余運算4+、—加、減運算例:求×18.45和的值?(1/60-3/56)*18.45,(1+2^(1+2))/(2+2)求余運算求余運算%和取余函數(shù)MOD()的作用相同,余數(shù)的正負號與除數(shù)一致。(1)若被除數(shù)與除數(shù)同號:那么結(jié)果值為:|表達式1|/|表達式2|的余數(shù)+表達式2的符號。(2)若被除數(shù)與除數(shù)異號:|表達式2|-(|表達式1|/|表達式2|的余數(shù))+表達式2的符號。例:?15%4--3,-15%-4---3?10%-3---2,-10%3-2,X=10Y=-3?X%Y-22)、字符表達式:由字符串運算符將字符型數(shù)據(jù)連接起來形成,其運算結(jié)果仍然是字符型數(shù)據(jù)。+:前后兩個字符串首尾連接形成一個新的字符串。-:連接前后兩個字符串,并將前字符串的尾部空格移到新成字符串的尾部。例:A=“ABCD”B=“EFGH”?A+B->“ABCDEFGH”,A-B->“ABCDEFGH”3)、日期時間表達式日期時間表達式中可以使用運算符有+和-兩個,其格式有一定的限制,不能任意組合。(不能用+將兩個<日期>或<日期時間>連接起來.)合法的日期時間表達式如下:格式結(jié)果及類型<日期>+<天數(shù)>或<天數(shù)>+<日期>日期型,指定日期若干天后的日期<日期>-<天數(shù)>日期型,指定日期若干天前的日期<日期>-<日期>數(shù)值型,兩個指定日期相差的天數(shù)<日期時間>+<秒數(shù)>或<秒數(shù)>+<日期時間>日期時間型,指定日期時間若干秒后的日期時間<日期時間>-<秒數(shù)>日期時間型,指定日期時間若干秒前的日期時間<日期時間>-<日期時間>數(shù)值型、兩個日期時間相差的秒數(shù)4)關(guān)系表達式關(guān)系表達式通常也稱為簡樸邏輯表達式,它由關(guān)系運算符將兩個運算對象連接起來形成。即:<表達式1><關(guān)系運算符><表達式2>,運算結(jié)果為邏輯型數(shù)據(jù)。關(guān)系運算符:運算符說明運算符說明<小于<=小于等于>大于>=大于等于=等于==字符串精確比較<>、#、!=不等于$子串包含測試運算符==和$只能用于字符型數(shù)據(jù),其他運算符號合用于任何類型的數(shù)據(jù),但前后兩個運算對象的數(shù)據(jù)類型要一致.(1)、數(shù)值型、貨幣型數(shù)據(jù)比較按數(shù)值大小比較,涉及負號例:?0>-1->.T.?$150<=$160->.T.(2)、日期型、日期時間型數(shù)據(jù)比較越早的日期或日期時間越小,越晚的日期或日期時間越大例:?{^2023-01-01}>{^2023-12-31}->.T.?{^2023-01-01}<={^2023-12-31}->.F.(3)、邏輯型數(shù)據(jù)比較.T.大于.F.(4)、子串包含測試格式:<字符串1>$<字符串2>若<字符串1>是<字符串2>的子串,則結(jié)果為.T.,否則為.F.(字母區(qū)分大小寫)ASCII碼例:?"abc"$"abcdeac"->.T.?"abc"$"Dabcdeac"->.T.?"abc"$"ddAbcdeac"->.F.設(shè)立字符的排序順序字符串比較時,系統(tǒng)對兩個字符串自左向右逐個比較,一旦發(fā)現(xiàn)兩個相應字符不同,就根據(jù)這兩個字符的排序序列決定兩個字符串的大小.1)、排序設(shè)立:人機會話方式下設(shè)立“工具”--->”數(shù)據(jù)”->”排序序列”命令方式設(shè)立SETCOLLATETO“<排序順序名>”(1)、Machine(機器)順序:按照機內(nèi)碼排序,西文字符是按照ASCII碼值排列:空格在最前面,大寫字母小于小寫字母,漢字的機內(nèi)碼與漢字國標碼一致,常用一級漢字按拼音順序決定大小。例:SETCOLLATETO“MACHINE”?“a”<”abc”,”a”<”A”,”A”>”B”.T..F..F.?“一”<”二”,”李明”<”王”,”王老師”<”王”,”您好”>”你好”.F..T..F..T.(2)PINYIN(拼音)順序按拼音順序排列,對于西文字符,空格在最前面,小寫字母在前面,大寫字母在后面.例:SETCOLLATETO“PINYIN”?“a”<”abc”,”a”<”A”,”a”<”A”.T..T..F.?“一”<”二”,”李”<”王”,”王老師”<”王”,”您好”>”你好”.F..T..F..T.(3)、STROKE(筆畫)順序無論中文、西文,按照書寫筆畫多少排序。例:SETCOLLATETO“STROKE”?“a”<”abc”,”a”<”A”,”a”<”A”.T..T..F.?“一”<”二”,”李”<”王”,”王老師”<”王”,”您好”>”你好”.T..F..F..T.?"c">"C".F.字符串精確比較與EXACT設(shè)立==:只有兩個字符串完全相同(涉及空格以及各字符的位置)時,運算結(jié)果才會是邏輯真.T.,否則為.F.,與EXACT命令設(shè)立無關(guān).=:運算結(jié)果與SETEXACTO(shè)N|OFF設(shè)立有關(guān)。系統(tǒng)默認為OFF狀態(tài),當處在OFF狀態(tài)時,只要右邊的字符串與左邊字符串的前面部分內(nèi)容相匹配,則結(jié)果為邏輯真.T.否則為邏輯.F.當處在ON狀態(tài)時,先在較短字符的尾部加上若干個空格使兩個字符串的長度相等,然后再進行比較SETEXACT對字符串比較的影響比較=(EXACTOFF)=(EXACTO(shè)N)==(EXACTON或OFF)“abc”=”abc”.T..T..T.“ab”=”abc”.F..F..F.“abc”=”ab”.T..F..F.“abc”=”ab“.F..F..F.“ab”=”ab”.F..T..F.“ab“=”ab”.T..T..F.“”=”ab”.F..F..F.“ab”=””.T..F..F.TRIM(“ab”)=”ab”.T..T..T.“ab”=TRIM(“ab”).T..T..T.例:SETEXACTO(shè)FFSTORE“計算機”TOS1STO(shè)RE“計算機“TOS2STORE“計算機世界”TOS3?S1=S3,S3=S1,S1=S2,S2=S1,S2==S1.F..T..F..T..F.SETEXACTON?S1=S3,S3=S1,S1=S2,S2=S1,S2==S1.F..F..T..T..F.?S2>S1.F.4)、邏輯表達式是由邏輯運算符將邏輯數(shù)據(jù)連接起來而形成,其運算結(jié)果仍是邏輯型數(shù)據(jù)(1)、三個運算符:AND(邏輯與)、OR(邏輯或)、NOT(邏輯非)運算級別為NOT-ANDOR邏輯運算規(guī)則:設(shè)A,B分別為兩個邏輯表達式AB.NOT.AA.AND.BA.OR.B.T..T..F..T..T..T..F..F..F..T..F..T..T..F..T..F..F..T..F..F.例:A=30B=40C=50?10<20AND10<30,10<20AND10>30,10>20AND10<30.T..F..F.?10<20OR10<30,10<20OR10>30,10>20OR10<30,10>20OR10>30.T..T..T..f.?NOT10<20,NOT10>20.F..T.(2)、運算符優(yōu)先級算術(shù)運算符---字符串運算符和日期時間運算符---關(guān)系運算符-邏輯運算符例:setexacoff?4^2/2^2>2AND“ABC”>”abc”?12>2AND“人”-“民”>”人”?((10%3=1)AND(15%2=0))OR"電腦"!='計算機'(四)、函數(shù)函數(shù)是用程序來實現(xiàn)的一種數(shù)據(jù)運算,每個函數(shù)都有特定的功能,它往往需要若干個自變量,即運算對象。但只能有一個結(jié)果,稱為函數(shù)值或返回值,函數(shù)可以用在表達式中,形式為:函數(shù)名(表達式)函數(shù)的類型:(5種類型)數(shù)值函數(shù)1、絕對值和符號函數(shù)(1)ABS(<數(shù)值表達式>)功能:返回指定的數(shù)值表達式的絕對值。例:?ABS(5)->,ABS(4-5)->1(2)SIGN(〈數(shù)值表達式〉)功能:返回指定數(shù)值表達的符號。結(jié)果為正->1結(jié)果為負->-1結(jié)果為零->0例:?SIGN(2)->1,SIGN(-2)->-1,SIGN(0)->02、求平方根格式:SQRT(<數(shù)值表達式>)功能:返回指定數(shù)值表達的平方根。自變量表達式的值不能為負。例:?SQRT(34),SQRT(81)3、圓周率函數(shù)格式:PI()功能:返回圓周率∏。該函數(shù)沒有自變量。?PI()4、求整數(shù)函數(shù):(1)INT(<數(shù)值表達式>)功能:返回指定數(shù)值表達式的整數(shù)部分.例:?INT(12.56)->12,INT(-13.8)->-13(2)CEILING(<數(shù)值表達式>)功能:返回大于或等于指定數(shù)據(jù)表達式的最小整數(shù)。例:?CEILING(34.6)->35,CEILING(-45.3)45(3)FLOOR(<數(shù)值表達>)功能:返回小于等于指定數(shù)據(jù)表達式的最大整數(shù)。?FLOOR(34.6)->34,FLOOR(-45.3)->-465、四舍五入函數(shù)ROUND(<數(shù)值表達1>,<數(shù)值表達2>)功能:返回指定表達式在指定位置四舍五入后的結(jié)果。說明:<數(shù)值表達2>指明四舍五入的位置。(1)<數(shù)值表達2>大于等于0,表達的是要保存的小數(shù)位數(shù)。(2)<數(shù)值表達2>小于0,表達的是整數(shù)部分舍入位數(shù)。例:?ROUND(345.9856,2),ROUND(345.9856,0),ROUND(345.45,-1),ROUND(345.56,-3)求余數(shù)函數(shù)格式:MOD(<數(shù)值表達式1>,<數(shù)值表達式2>)功能:返回兩個數(shù)值相除后的余數(shù)。?mod(-10,3)->2求最大值和最小值函數(shù)(1)MAX(<表達式1>,<表達式2>[,<表達3>])功能:返回最大值。?MAX(“3”,”21”,”12”)->“3”?MAX(3,21)->21(2)MIN(<表達式1>,<表達式2>[,<表達式3>])功能:返回最小值。注:表達式的類型可以是數(shù)值型、字符型、貨幣型、日期型或日期時間型。但所有表達式的類型必須相同。例:?MAX('2','12','05'),MIN('汽車','飛機','輪船')字符函數(shù)(自變量一般是字符型數(shù)據(jù))1、求字符串長度函數(shù)格式:LEN(<字符表達式>)功能:返回指定字符表達式值的字符長度,即所包含的字符個數(shù)。函數(shù)值類型為數(shù)值型。?LEN(“VFP程序設(shè)計”)->122、大小寫轉(zhuǎn)換函數(shù)(1)LOWER(<字符表達式>)功能:將指定表達式中的大寫字母轉(zhuǎn)換為小寫字母。例:?LOWER(‘34ABCDbbdd’)(2)UPPER(<字符表達式>)功能:將指定表達式中的小寫字母轉(zhuǎn)換為大寫字母。例:?UPPER(‘34ABCDbbdd’)ACCEPT“請輸入一個字母“toAIf_UPPER(A)___=”Y”3、空格字符串生成函數(shù)格式:SAPCE(<數(shù)值表達式>)功能:返回指定數(shù)目的空格組成的字符串。?SPACE(10)+’ABC’4、刪除前后空格函數(shù)(1)TRIM(<字符表達式>)或RTRIM(<字符表達式>)功能:返回指定字符表達式去掉尾部空格后形成的字符串。例:?TRIM(“AABB”)+’11’(2)LTRIM(<字符表達式>)功能:返回指定字符表達式去掉前導空格后形成的字符串。例:?”11”+LTRIM(“AABB”)+’22’(3)ALLTRIM(<字符表達式>)功能:返回指定字符表達式去掉前導和尾部空格后形成的字符串。例:?”11”+ALLTRIM(“AABB”)+’22’5、求子串函數(shù)(1)LEFT(<字符表達式>,<長度>)功能:從字符表達式左邊返回一個指定長度的子串。?LEFT('ABCDE',3),LEFT('中國',2)(2)RIGHT(<字符表達式>,<長度>)功能:從字符表達式右邊返回一個指定長度的子串。?RIGHT('ABCDE',3),RIGHT('中國',2)(3)SUBSTR(<字符表達式>,<起始位置>[,<長度>])功能:從字符表達式指定位置返回一個指定長度的子串。若缺省<長度>,則函數(shù)從指定位置一直取到最后一個字符。?SUBSTR('ABCDE',3),SUBSTR('中國',3,2)?SUBSTR('ABCDE',3,10)6、計算子串出現(xiàn)次數(shù)函數(shù)OCCURS(<字符表達式1>,<字符表達式2>)功能:返回第一個字符表達式1在第二個字符表達式2中出現(xiàn)的次數(shù),函數(shù)值為數(shù)值型。若第一個字符串不是第二個字符串的子串,函數(shù)值為0。例:?OCCURS(‘A’,‘ABCDEA’)->2?OCCURS(‘G可有可無’,‘ABCDEA’)->07、求子串位置函數(shù)AT(<字符表達式1>,<字符表達式2>[,<數(shù)值表達式>])或ATC(<字符表達式1>,<字符表達式2>[,<數(shù)值表達式>])功能:假如<字符表達式1>是<字符表達式2>的子串,則返回<字符表達式1>的首字符在<字符表達式2>的位置,若不是子串,則返回0。說明:ATC()與AT()功能相似,不區(qū)分大小寫。(2)<數(shù)值表達式>用于表達在<字符表達式2>中搜索<字符表達式1>第幾次出現(xiàn),省略時,默認值是1。?AT(“AB”,”ABCDABCD”)->1?AT(“AB”,”ABCDABCD”,2)->5?ATC(“ab”,”ABCDABCD”)->1?AT(“ab”,”ABCDABCD”)->08、子串替換函數(shù)格式:STUFF(<字符表達式1>,<起始位置>,<長度>,<字符表達式2>)功能:用<字符表達式2>值替換<字符表達式1>中由<起始位置>和<長度>指定的一個子串。注:(1)假如<長度>是0,<字符表達式2>則插在由<起始位置>指定字符前面。?stuff(“112233”,3,0,”aa”)->11aa2233(2)假如<字符表達式2>是空串,那么<字符表達式1>中由<起始位置>和<長度>指定的子串被刪除。?stuff(“112233”,3,2,””)->1133?stuff(“112233”,3,2,”aa”)->11aa339、字符替換函數(shù)CHRTRAN(<字符表達式1>,<字符表達式2>,<字符表達式3>)功能:當?shù)谝粋€字符串中的一個或多個字符與第二個字符串中的某個字符相匹配時,就用第三個字符串中的相應字符(相同位置)替換這些字符。?crhtran(“1122335”,”23”,”ab”)->11aabb5說明:(1)假如第三個字符串包含字符個數(shù)少于第二個字符串包含的字符個數(shù),因而沒有相應字符,那么第一個字符串中的相匹配的各字符被刪除。?crhtran(“1122335”,”23”,”a”)->11aa5假如第三個字符串包含字符個數(shù)多于第二個字符串包含的字符個數(shù),多余字符被忽略。例:?CHRTRAN('','2345','5678')?CHRTRAN('','26','5566')?CHRTRAN('','2346','55')10、字符串匹配函數(shù)格式:LIKE(<字符表達式1>,<字符表達式2>)功能:比較兩個字符串相應位置上的字符,若所有相應字符都相匹配,則函數(shù)返回邏輯真(.T.),否則返回邏輯假(.F.)注:<字符表達式1>中可以包含通配符*和?例:?LIKE("AB","AB")->.T.?LIKE("ABC","AB")->.F.?LIKE("AB","ABC")->.F.?LIKE("AB?","ABC")->.T.?LIKE("ABC","AB?")->.F.?LIKE("AB*","ABC")->.T.日期和時間函數(shù)1、系統(tǒng)日期和時間函數(shù)(1)DATE()功能:返回系統(tǒng)當前日期,函數(shù)值為日期型(D)(2)TIME()功能:返回系統(tǒng)當前時間,函數(shù)值為字符型(C)(3)DATETIME()功能:返回系統(tǒng)當前日期時間,函數(shù)值為日期時間(T)。2、求年份、月份和天數(shù)函數(shù)(1)YEAR(<日期型表達式>|<日期時間表達式>)功能:返回表達式中的年份。YEAR({^1012/02/01})=2023YEAR({^1012/02/01})=”2023”(錯誤)(2)MONTH(<日期型表達式>|<日期時間表達式>)功能:返回表達式中的月份。(3)DAY(<日期型表達式>|<日期時間表達式>)功能:返回表達式中指定月份里的哪一天。注:返回值都為數(shù)值型(N)3、時、分和秒函數(shù)(1)HOUR(<日期時間表達式>)功能:返回表達式中的小時部分(24小時制)。(2)MINUTE(<日期時間表達式>)功能:返回表達式中的分鐘部分。(3)SEC(<日期時間表達式>)功能:返回表達式中的秒數(shù)部分。注:返回值都為數(shù)值型(N)數(shù)據(jù)類型轉(zhuǎn)換函數(shù)1、數(shù)值轉(zhuǎn)換成字符函數(shù)格式:STR(<數(shù)值表達式>[,<長度>[,<小數(shù)位數(shù)>]])功能:<數(shù)值表達式>的值轉(zhuǎn)換成字符符串,轉(zhuǎn)換時根據(jù)需要自動進行四舍五入。說明:(1)省略<長度>和<小數(shù)位數(shù)>,小數(shù)位數(shù)默認為O,長度默認值為10。(2)返回字符串的抱負長度(設(shè)為L)為:<整數(shù)部分位數(shù)>+<1位小數(shù)點>+小數(shù)位數(shù)(3)假如<長度>大于L,則字符串加前導空格補足規(guī)定的<長度>。(4)假如<長度>值小于等于L,但大于整數(shù)部分(涉及負號)位數(shù),則優(yōu)先滿足整數(shù)部分而自動調(diào)整小數(shù)部分。(5)假如<長度>值小于整數(shù)部分位數(shù),則返回一串*號例:?STR(123456.78)?STR(123456.78,7)?STR(-123456.78,7)?STR(123456.78,5)2、字符轉(zhuǎn)換成數(shù)值格式:VAL(<字符型表達>)功能:將由數(shù)字符號(涉及正負號、小數(shù)點)組成的字符型數(shù)據(jù)轉(zhuǎn)換成相應的數(shù)值型數(shù)據(jù)。說明:(1)若字符串內(nèi)出現(xiàn)非數(shù)字字符,那么只轉(zhuǎn)換前面部分(2)若字符串的首字符不是數(shù)字符號,則返回數(shù)值零,但忽略前導空格。例:?VAL('23.456'),VAL('-23.65')?VAL('34A.56'),VAL('B34.65')3、字符轉(zhuǎn)換成日期或日期時間(1)CTOD(<字符表達式>)功能:將<字符表達式>轉(zhuǎn)換成日期型數(shù)據(jù)SETDATETO“AMER”例:?CTOD(“03/20/99”)(2)CTOT<字符表達式>)功能:將<字符表達式>轉(zhuǎn)換成日期時間型數(shù)據(jù).例:SETDATETO“AMER”?CTOT("03/20/9915")4、日期或日期時間轉(zhuǎn)換成字符串(1)DTOC(<日期表達式>|<日期時間表達>[,1])功能:將<日期表達式>|<日期時間表達>轉(zhuǎn)換成字符串。注:1)字符串中的日期部分與SETDATETO和SETCENTURY命令有關(guān)。例:SETDATETO(shè)"AMER"SETCENTURYON?DTOC({03/20/99},1)SETCENTURYOFF?DTOC({03/20/99})2)[,1]:表達字符串的格式為YYYYMMDD格式,共8個字符。例:?DTOC({03/20/99},1)(2)TTOC(<日期時間表達>[,1])功能:將<日期時間表達>轉(zhuǎn)換成字符串。注:(1)字符串中的日期部分與SETDATETO和SETCENTURY命令有關(guān)。(2)字符串中的時間部分與SETHOURSTO12|24命令有關(guān)。SETDATETO"AMER"SETCENTURYONSETHOURSTO12?TTOC({03/20/99})?TTO(shè)C({03/20/99,13})SETCENTURYOFFSETHOURSTO(shè)24?TTOC({03/20/99})?TTOC({03/20/99,13})2)[,1]:表達字符串的格式為YYYYMMDDHHMMSS格式,共14個字符。例:?TTOC({03/20/99,12:10},1)5、宏替換函數(shù)格式:&<字符串變量>[.]功能:替換出字符型變量的內(nèi)容,即&的值是變量中的字符串例1:AA='123'?&AA?&AA+10例2:BB=”ABCD”?&BB(為什么犯錯?例3:AB=”23”CC=”A”?&CC.B(值為多少?)相稱于?ab測試函數(shù)1、值域測試函數(shù)格式:BETWEEN(<表達式T>,<表達式L>,<表達式H>)功能:判斷<表達式T>是否介于<表達式L>,<表達式H>之間,若是則返回.T.,否則返回.F.例:?BETWEEN(12,10,20),BETWEEN(12,13,20)注:若<表達式L>或<表達式H>有一個變量是NULL值,則函數(shù)返回NULL值。?BETWEEN(12,NULL,20),BETWEEN(12,9,.NULL.)2、空值(NULL值)測試函數(shù)格式isnull(表達式)功能:測試一個表達式的結(jié)果是否為null值。例:X=.NULL.?ISNULL(X)3、“空”值測試函數(shù)格式:empty(表達式)功能:測試表達的結(jié)果的是否為“空”值,若是空值,則返回.T.,否則返回.F.注:不同的數(shù)據(jù)類型,”空”值有不同的規(guī)定數(shù)據(jù)類型“空”值數(shù)據(jù)類型“空”值數(shù)值型、貨幣型、整型、雙精度型、浮點型0字符型空串、空格制表符、回車(CHR(13))、換行(CHR(10))邏輯型.F.日期型{//}或CTOD(””)日期時間型?empty({//,})或CTOT(””)備注型備注型字段無內(nèi)容4、數(shù)據(jù)類型測試函數(shù)格式:VARTYPE(<表達式>[,邏輯表達式>])功能:返回<表達式>的數(shù)據(jù)類型值。字符型。只能是C、N、D、L、Y、T注意假如是沒有類型的返回一個U返回的數(shù)據(jù)類型返回的字母數(shù)據(jù)類型返回的字母數(shù)據(jù)類型C字符型G通用型N數(shù)值、整型、浮點型、雙精度型D日期型Y貨幣型T日期時間型L邏輯型XNULL值O對象型U未定義說明:(1)若〈表達式〉是一個數(shù)組,則返回第一個數(shù)組元素的數(shù)據(jù)類型。(2)若〈表達式〉的運算結(jié)果為NULL值,則根據(jù)<邏輯表達式>來決定返回〈表達式>的類型1)若<邏輯表達式>為.T.,就返回<表達式〉的原值.2)若<邏輯表達式>為.F.,就返回X,表白<表達式〉的值為NULL值。例:A=34A=.NULL.?VARTYPE(A)?VARTYPE(A,.T.)5、條件測試函數(shù)格式:IIF(<邏輯表達式>,<表達式1>,<表達式2>)功能:若<邏輯表達式>為.T.,則返回<表達式1>的值.否則返回<表達式2>的值.例:?IIF(12>20,‘100’,200)6、表文獻測試函數(shù)1)表文獻的邏輯結(jié)構(gòu)文獻起始標記(首標)首記錄(top)第2條記錄…第N條記錄尾記錄(Bottom)文獻結(jié)束標記(尾標)2)表文獻尾測試函數(shù)格式:EOF(<工作區(qū)號>|<表別名>)功能:測試記錄指針是否指向文獻尾,若是返回邏輯.T.,否則顯示邏輯假.F.,表文獻尾是指最后一條記錄的后面。若省略自變量,則測試當前工作區(qū)中的表文獻。Use倉庫表GOBOTTO(shè)M?EOF()->.F.SKIP?EOF(),EOF(2)&&假定2號工作區(qū)沒有打開表.T..F.3)表文獻首測試函數(shù)格式:BOF(<工作區(qū)號>|<表別名>)功能:測試記錄指針是否指向文獻首,若是返回邏輯.T.,否則顯示邏輯假.F.,表文獻首是指第一條記錄的前面。若省略自變量,則測試當前工作區(qū)中的表文獻。若當前工作區(qū)沒有打開表,函數(shù)返回邏輯假.F.,若表文獻不包含任何記錄,函數(shù)返回邏輯真.T.Use倉庫表GOTOP?BOF()->.F.SKIP-1?BOF(),BOF(2)&&假定2號工作區(qū)沒有打開表.T..F.ZAP?EOF(),BOF()->.T..T.4)記錄號測試函數(shù)格式:RECNO(<工作區(qū)號|<表別名>)功能:測試當前表文獻或指定表文獻中的當前記錄的記錄號。若當前工作區(qū)沒有打開表,函數(shù)返回0Use倉庫表&&假設(shè)表中有4條記錄?BOF(),RECNO()&&顯示.F.1Skip-1?BOF(),RECNO()&&顯示.T.1GOBOTTOM?EOF(),RECNO()&&顯示.F.4Skip?EOF(),RECNO()&&顯示.T.55)記錄個數(shù)測試函數(shù)格式:RECCOUNT(<工作區(qū)區(qū)號>|<表別名>)功能:測試當前表文獻或指定表文獻中物理存在的記錄數(shù)。不管記錄是否被邏輯刪除Use倉庫表&&假設(shè)表中有4條記錄?RECCOUNT()&&顯示4DELENEXT2?RECCOUNT()&&顯示46)記錄刪除測試函數(shù)格式:DELETE(<工作區(qū)號|<表別名>)功能:測試當前表文獻或指定表文獻中當前記錄是否有邏輯刪除標記“*”,若有返回.T.,否則返回.F.,缺省自變量,則測試當前工作區(qū)中所打開的表USE倉庫表Go2Delete?delete()->.T.GO4?delete()->.F.第四章數(shù)據(jù)庫操作一、數(shù)據(jù)庫的基本概念通過一組系統(tǒng)文獻將互相聯(lián)系的數(shù)據(jù)庫表及相關(guān)的數(shù)據(jù)庫對象(數(shù)據(jù)庫表,視圖、表之間的聯(lián)系)統(tǒng)一組織和管理,由數(shù)據(jù)庫文獻(.DBC)數(shù)據(jù)庫備注文獻(.DCT),數(shù)據(jù)庫索引文獻(.DCX)三個文獻構(gòu)成,簡稱DB。二.數(shù)據(jù)庫操作命令1、建立數(shù)據(jù)庫格式:creat(yī)edatabase數(shù)據(jù)庫名[.dbc]功能:建立一個新數(shù)據(jù)庫,該數(shù)據(jù)庫是一個空庫,建立后自動處在打開狀態(tài),不彈出數(shù)據(jù)庫設(shè)計器例:CREATEDATABASE學生管理2、打開數(shù)據(jù)庫格式:OPENDATABASE數(shù)據(jù)庫名[EXCLUSIVE/SHARE][NOUPDATE][VALIDDATE]功能:打開數(shù)據(jù)庫,不彈出數(shù)據(jù)庫設(shè)計器1)EXCLUSIVE:獨占方式打開2)SHARE:共享方式打開3)NOUPDATE:只讀方式打開,不允許編輯。4)[VALIDATE]:打開數(shù)據(jù)庫時檢查數(shù)據(jù)庫中的對象(表和索引)是否合法。例:Opendatabase學生管理3、修改數(shù)據(jù)庫格式:MODIFYDATABASE數(shù)據(jù)庫名[NOWAIT][NOEDIT]功能:修改數(shù)據(jù)庫,打開數(shù)據(jù)設(shè)計器1)NOWAIT:在交互使用時無效,在程序中使用時,數(shù)據(jù)庫設(shè)計器打開后,應用程序不暫停。3)NOEDIT:嚴禁對數(shù)據(jù)庫進行修改。例:MODIDATA學生管理4、刪除數(shù)據(jù)庫格式:DELETEDATABASE數(shù)據(jù)庫名[DELETETABLES][RECYCLE]功能:刪除數(shù)據(jù)庫。默認不刪除數(shù)據(jù)庫中表1)[DELETETABLES]:刪除數(shù)據(jù)庫中的表2)[RECYCLE]:刪除數(shù)據(jù)庫和表放入WINDOWS回收站中。例:DELEDATA學生管理5、設(shè)立當前數(shù)據(jù)庫格式:SETDATABASETO[數(shù)據(jù)庫]功能:設(shè)立當前數(shù)據(jù)庫。在同一時刻只能有一個當前數(shù)據(jù)庫;必須先打開相應數(shù)據(jù)庫SETDATABASETO:使得所有打開的數(shù)據(jù)庫都不是當前數(shù)據(jù)庫。所有數(shù)據(jù)庫都沒有關(guān)閉。3)在同一個工作區(qū)中可以同時打開多個數(shù)據(jù)庫,但只能打開一個表例:SETDATATO(shè)學生管理SETDATATO數(shù)據(jù)庫的關(guān)閉格式1:CLOSEDATABASE功能:關(guān)閉當前數(shù)據(jù)庫格式2:CLOSEDATABASEALL功能:關(guān)閉所有打開的數(shù)據(jù)庫三、表的基本操作命令(自由表、數(shù)據(jù)庫表)(一)、表的建立格式:CREATE表名[.DBF]功能:建立一個表文獻,假如建立數(shù)據(jù)表,要先打開數(shù)據(jù)庫。字段名自由表的字段名最長為10個字符。數(shù)據(jù)庫表字段名最長為128個字符。字段名必須以字母、漢字開頭,其余任意字段名不能包含空格。2)字段類型:C:長度可變:(最多能存儲254個字符)N:長度可變Y:貨幣型(長度為8)。不可變F:浮點型B:雙精度I:整型(長度為4)M:備注型(長度為4)(存儲254個以上的字符)G:通用型(長度為4):存放圖片、電子表格、文檔。D:日期型(長度為8)T:日期時間型(長度為8)L:邏輯型:(長度為1)3)記住各種類型的長度。D->8,T->8,Y->8,L->1,I->4,G->4,M->44)空值(null)字段是否為空,空表達不擬定(二)、打開表格式:USE表名[IN<工作區(qū)號>][ALIAS<別名>]功能:打開表文獻。說明:1)省略可選項:在當前工作區(qū)中打開表2)IN<工作區(qū)號>:在指定工作區(qū)中打開表3)ALIAS<別名>:為打開表提供一個別名,若省略,默認打開的表別名與表文獻主文獻名相同。4)剛打開表時,記錄指針指向首記錄。5)use:關(guān)閉表(三)表結(jié)構(gòu)的操作命令1、修改表的結(jié)構(gòu)格式:MODIFYSTRUCTURE功能:修改當前表的結(jié)構(gòu),可以修改已有的字段,新加字段、刪除字段。2、查看表的結(jié)構(gòu)格式:1)LISTSTRUCTURE[TOPRINTER][TO(shè)FILE<文獻名>]2)DISPLAYSTRUCTURE[TO(shè)PRINTER][TOFILE<文獻名>]功能:顯示當前表的結(jié)構(gòu)。說明:LISTSTRU:連續(xù)顯示DISPSTRU:分屏顯示3)TOPRINTER:把表的結(jié)構(gòu)信息送打印機輸出4)TO(shè)FILE文獻名:把表的結(jié)構(gòu)信息輸出到一個擴展名為.TXT的文獻中。3、復制表結(jié)構(gòu)格式:COPYSTRUCTURETO<文獻名>[FIELDS<字段名表>]功能:復制當前表文獻的所有或部分字段,生成一個新的表結(jié)構(gòu)。說明:省略FIELDS<字段名表>:新生成的表結(jié)構(gòu)與原表結(jié)構(gòu)完全相同,具有FIELDS<字段名表>:新表結(jié)構(gòu)只包含<字段名表>指定的字段。注意:以上操作必須將表先打開(四)、表記錄的操作命令1.顯示記錄(在VFP的屏幕上顯示)格式:LIST|DISPLAY[OFF][<范圍>]FOR|WHILE<條件>[FIELDS字段名表][TOPRINTER][TOFILE<文獻名>]功能:顯示表中的記錄說明:1)LIST:連續(xù)顯示,DISP:分屏顯示2)省略<范圍>:LIST顯示所有記錄,DISPLAY顯示當前記錄。3)FIELDS<字段名表>:顯示指定的字段,若省略,顯示所有的字段。4)OFF:不顯示記錄號,若省略,默認顯示記錄號。5)TOPRINTER:顯示結(jié)果送到打印機輸出6)TOFILE<文獻名>:顯示結(jié)果送到擴展名為.txt的文本文獻中。例:1、顯示倉庫表中的所有記錄USE倉庫表LIST或DISPALL2、顯示倉庫表中的第2號~第3號記錄USE倉庫表GO2LISTNEXT23、顯示倉庫表中面積大于等于300的記錄USE倉庫表LISTFOR面積>=300LISTALLFOR面積>=300DISPFOR面積>=3004、顯示倉庫表中面積大于等于300且城市為北京的記錄USE倉庫表LISTFOR面積>=300AND城市=”北京”5、顯示倉庫表中面積大于等于300且城市為北京的所有記錄的倉庫號,城市,面積3個字段USE倉庫表LISTFIEL倉庫號,城市,面積FOR面積>=300AND城市=”北京“6、顯示倉庫表中經(jīng)營良好所有記錄的倉庫號,城市,面積3個字段USE倉庫表LISTFIEL倉庫號,城市,面積FOR經(jīng)營狀況->L型2、設(shè)立過濾和設(shè)立字段1)設(shè)立過濾:格式:SETFILTERTO[<條件>]功能:過濾滿足條件的記錄,省略條件選項,恢復為所有的記錄。USE倉庫表SETFILTERTO倉庫號=“WH1”LIST&&只顯示倉庫號為WH1的所有記錄SETFILTERTOLIST&&只顯示所有記錄2)設(shè)立字段格式:SETFIELDSTO[<字段名表>|ALL]功能:表達用戶只能對“字段名表”列出的字段操作,其余字段暫時隱蔽起來,說明:ALL:表達表中所有字段。SETFIELDSTO(shè):取消“字段名表”中設(shè)立的字段。SETFIELDSOFF:取消“字段名表”中設(shè)立的字段,恢復對表中所有的字段進行操作。例:USE創(chuàng)庫表LIST&&顯示所有字段。SETFIELDSTO倉庫號,面積LIST&&只顯示倉庫號、面積兩個字段。SETFIELDSTOLIST&&所有字段都不顯示SETFIELDSOFFLIST&&顯示所有字段。3、記錄定位1)絕對定位(GO或GOTO命令)格式:(1)go/goto<數(shù)值表達式>(2)go/gototop/bottom(3)go/gotorecord<數(shù)值表達式>功能:移動記錄指針,記錄指針所指的位置即為當前記錄。例:gotop&&記錄指針指向首記錄gobottom&&記錄指針指向尾記錄go3&&記錄指針指向記錄號為3的記錄gorecord3&&記錄指針指向記錄號為3的記錄2)相對定位格式:SKIP[<數(shù)值表達式>]功能:以當前記錄為其準,向上或向下移動記錄指針。說明:<數(shù)值表達式>為正值,記錄指針移動、為正值,記錄指針向下移動。例:use倉庫表?RECNO()->1SKIP3?RECNO()->4SKIP-2?RECNO()->2添加記錄1)在尾部添加記錄格式:APPEND[BLANK]功能:只在尾部添加記錄。說明:BLANK:只在尾部添加空記錄。2)在任意位置添中,但前提記錄定位。格式:INSERT[BEFORE][BLANK]功能:在任意位置添中,但要提前定位記錄。說明:BLANK:只在尾部添加空記錄。BEFORE:在當前記錄前插入記錄5.修改記錄1)BROWSE命令:以瀏覽窗口的方式修改記錄。添加記錄:CTRL+Y邏輯刪除記錄:CTRL+T2)EDIT|CHANGE交互方式修改3)用指定值直接修改格式:REPLACE[<范圍>]<字段名1>with<表達式1>[ADDITIVE][,<字段名2>with<表達式2>[ADDITIVE][FOR<條件>]]功能:在指定的范圍內(nèi),將滿足條件的記錄的某些字段內(nèi)容用相應的表達式值來替換。注:省略[<范圍>][FOR<條件>]選項,僅對當前記錄替換。例:學生表(學號,姓名,政治,數(shù)學,總分)。計算總分:USE學生表replALL總分with政治+數(shù)學(計算所有學生的總分。Go2repl總分with政治+數(shù)學(只對記錄號為2的記錄計算總分。沒有for和all,則替換當前記錄。5.記錄的刪除(邏輯刪除、物理刪除)1)邏輯刪除(打刪除標記*)格式:delete[范圍][for條件]功能:邏輯刪除,只打刪除標記。說明:省略參數(shù):邏輯刪除當前記錄。2)物理刪除:(從表中徹底刪除)PACK:將邏輯刪除(帶*號)的記錄物理刪除ZAP:一次性物理刪除所有記錄注:物理刪除后不合恢復。6.恢復記錄格式:RECALL[范圍][FOR條件]格式:恢復邏輯刪除記錄注意:省略參數(shù):邏輯恢復當前記錄。例:recall&&只恢復當前記錄recallFOR倉庫號=“WH1”&&恢復倉庫號為“WH1”記錄recallall&&恢復所有邏輯刪除的記錄(五)、拷貝表文獻命令格式:COPYTO<新表名>[范圍][FIELDS字段名表][FOR<條件>]功能:將表中指定的字段與指定的記錄復制到新表中。說明:使用該命令時,源表必須先打開。FIELDS<字段名表>:新表中只涉及指定定字段。FOR<條件:新表中只涉及滿足條件的記錄。(六)注型字段與通用型字段的操作1、備注型字段1)修改備注型字段格式:MODIFYMEMO<備注型字段1>[,<備注型字段2>…][NOEDIT]功能:編輯備注型字段。說明:NOEDIT:編輯的備注型字段具有只讀屬性,只能瀏覽。2)復制備注型字段的內(nèi)容格式:COPYMEMO<備注型字段名>TO<文獻名>[ADDITIVE]功能:把備注型字段的內(nèi)容復制至文獻中。說明:ADDITIVE:將備注型字段內(nèi)容追加到指定文獻的磁盤文獻的尾部.不覆蓋文獻中原有的內(nèi)容。2)向備注型字段復制內(nèi)容格式:APPENDMEMO<備注型字段名FROM<文獻名>[OVERWRITE]功能:把指定文獻中內(nèi)容復制到備注型字段中。說明:OVERWRITE:覆蓋備注型字段內(nèi)容,否則追加到備注型字段內(nèi)容的尾部。2、通用型字段1)將圖像文獻存入通用型字段APPENDGENERAL<通用型字段名>FROM<圖像文獻名>2)通用型字段的顯示@行,列SAY通用型字段名6.索引1)索引的分類主索引,候選索引,唯一索引,普通索引。2)索引文獻的分在單索引文獻:.idx復合索引文獻:cdx復合索引分為兩種:結(jié)構(gòu)化復合,非結(jié)構(gòu)化復事。結(jié)構(gòu)化:索引文獻名與表名相同,隨著表的打開是打開,隨著表的關(guān)閉而關(guān)閉。3)創(chuàng)建索引單索引建立:indexon索引表達式to索引文獻名當索引表達式涉及到兩個字段時,必須轉(zhuǎn)為字符型用+/-連接。會出現(xiàn)改錯。Indexon姓名+dtoc(出生日期)toxmrq按工資降序索引indexon20230–工資togz結(jié)構(gòu)化復合索引indexon表達式tag索引標記asc/descfor條件非結(jié)構(gòu)化復合索引indexon表達式tag索引標記of索引文獻名asc/desc4)索引文獻的使用use表名index索引文獻名use表名alia別名in區(qū)號index索引文獻名setindexto索引文獻名setorderto索引標記asc/desc指定當前索引。6.查詢定位locatefor條件查詢定位,此語句不規(guī)定索引,找到后不顯示,想顯示輸入:display與locate配對,實現(xiàn)繼續(xù)查找的命令是continue。8.數(shù)據(jù)完整性分為三種:實體完整性:主索引和候選索引。域完整性:約束參照完整性:由外鍵來實現(xiàn)。9.自由表addtable表名removetable表名10排序sorton字段名1/a/d/c,字段名2/a/d/cto新表名for條件fields字段中列表與索引不同,生成個新表。必須打開才干使用。已經(jīng)不推薦使用。11.多工作區(qū)操作32767轉(zhuǎn)換工作區(qū):select區(qū)號/區(qū)名select1selectaselect0顯示別名區(qū)字段的值:區(qū)名.字段名區(qū)名->字段名select1usexsdaselect2usexscj?學號,xsda.性別,xsda.家庭地址usexsdaaliaxsetrelationto關(guān)鍵字into別名兩個表建立臨時連接。規(guī)定兩表建立索引。別名區(qū)的指針會隨著當前區(qū)移動。Joinwith別名to新有for條件fields字段名兩個表建立物理連接,生成一個新表。Select1UsexsdaSelect2UsexscjJoinwithat(yī)oxsdacjfor學號=a->學號fields學號,a->姓名,a->性別,a->出生日期,政治,數(shù)學,語文,總分12.補充countto變量名sum字段名表to變量名表aver字段名表to變量名totalon字段名to新表fields字段名表此命令規(guī)定必須索引。Find字符變量Seek表達式這兩個查詢語句必須索引。第五章關(guān)系數(shù)據(jù)庫標準語言sql:是結(jié)構(gòu)化的語言。它包含數(shù)據(jù)定義、數(shù)據(jù)操縱、數(shù)據(jù)管理控制等功能。該語言簡樸。5.1sql概述sql86,sql89sql92具有以下特點:1)是一個一體化語言,涉及數(shù)據(jù)定義、數(shù)據(jù)查詢、數(shù)據(jù)操縱和數(shù)據(jù)控制四大功能。2)是一種高非過程化的語言。3)語言簡潔4)可以直接以命令交互使用,也可以嵌入到程序中使用。數(shù)據(jù)定義:create,alter,drop數(shù)據(jù)查詢:select數(shù)據(jù)操縱:insertupdatedelete數(shù)據(jù)控制:grantrevoke5.2查詢功能sql的核心查詢。Select命令。基本語法:select*/字段名列表distincttopnfrom表名列表where查詢條件groupby字段having分組條件orderby字段asc/desc解釋:1)select/字段名列表:表達查詢哪些字段。假如是表中的所有字段是用*表達。假如是某幾個字段,則列出段名。Select*Selectxh,xm2)distinct:表達去掉反復元組。3)topn表達只顯示滿足條件的前N條記錄。此命令規(guī)定必須與orderby配對使用。4)from表

溫馨提示

  • 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

提交評論