VFP第1章數(shù)據(jù)庫系統(tǒng)與Visual FoxPro基礎(chǔ)_第1頁
VFP第1章數(shù)據(jù)庫系統(tǒng)與Visual FoxPro基礎(chǔ)_第2頁
VFP第1章數(shù)據(jù)庫系統(tǒng)與Visual FoxPro基礎(chǔ)_第3頁
VFP第1章數(shù)據(jù)庫系統(tǒng)與Visual FoxPro基礎(chǔ)_第4頁
VFP第1章數(shù)據(jù)庫系統(tǒng)與Visual FoxPro基礎(chǔ)_第5頁
已閱讀5頁,還剩120頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、中國水利水電出版社Microsoft第第1章章 數(shù)據(jù)庫系統(tǒng)與數(shù)據(jù)庫系統(tǒng)與Visual FoxPro基礎(chǔ)基礎(chǔ) 關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫Visual FoxProVisual FoxPro操作基礎(chǔ)及數(shù)據(jù)運(yùn)算操作基礎(chǔ)及數(shù)據(jù)運(yùn)算數(shù) 據(jù) 模 型數(shù) 據(jù) 模 型數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng)1.1 數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng) 1.1.1 計(jì)算機(jī)數(shù)據(jù)管理的發(fā)展計(jì)算機(jī)數(shù)據(jù)管理的發(fā)展1信息、數(shù)據(jù)及數(shù)據(jù)處理信息、數(shù)據(jù)及數(shù)據(jù)處理(1)數(shù)據(jù)數(shù)據(jù)是指存儲(chǔ)在某種媒體上能夠識別的物理符號是指存儲(chǔ)在某種媒體上能夠識別的物理符號 。 (2)信息信息是指數(shù)據(jù)經(jīng)過加工處理后所獲取的有用知識。是指數(shù)據(jù)經(jīng)過加工處理后所獲取的有用知識。 (3)數(shù)據(jù)處理數(shù)據(jù)處

2、理就是將數(shù)據(jù)轉(zhuǎn)換為信息的過程。包括對各種類就是將數(shù)據(jù)轉(zhuǎn)換為信息的過程。包括對各種類型的原始數(shù)據(jù)進(jìn)行采集、整理、存儲(chǔ)、分類、加工、檢索、型的原始數(shù)據(jù)進(jìn)行采集、整理、存儲(chǔ)、分類、加工、檢索、統(tǒng)計(jì)、維護(hù)和傳輸?shù)纫幌盗羞^程。統(tǒng)計(jì)、維護(hù)和傳輸?shù)纫幌盗羞^程。 演示演示2數(shù)據(jù)管理技術(shù)的發(fā)展數(shù)據(jù)管理技術(shù)的發(fā)展 (1)人工管理階段)人工管理階段 應(yīng)用程序和數(shù)據(jù)之間的關(guān)系如圖應(yīng)用程序和數(shù)據(jù)之間的關(guān)系如圖1-1所示。所示。應(yīng)用程序應(yīng)用程序A1應(yīng)用程序應(yīng)用程序A2應(yīng)用程序應(yīng)用程序An數(shù)據(jù)集數(shù)據(jù)集S1數(shù)據(jù)集數(shù)據(jù)集S2數(shù)據(jù)集數(shù)據(jù)集Sn圖1-1(2)文件管理階段)文件管理階段 應(yīng)用程序和數(shù)據(jù)之間的關(guān)系如圖應(yīng)用程序和數(shù)據(jù)之間

3、的關(guān)系如圖1-2所示。所示。應(yīng)用程序應(yīng)用程序A1應(yīng)用程序應(yīng)用程序A2應(yīng)用程序應(yīng)用程序An數(shù)據(jù)集數(shù)據(jù)集S1數(shù)據(jù)集數(shù)據(jù)集S2數(shù)據(jù)集數(shù)據(jù)集Sn文件文件系統(tǒng)系統(tǒng)圖1-2(3)數(shù)據(jù)庫管理階段)數(shù)據(jù)庫管理階段 應(yīng)用程序和數(shù)據(jù)之間的關(guān)系如圖應(yīng)用程序和數(shù)據(jù)之間的關(guān)系如圖1-3所示。所示。應(yīng)用程序應(yīng)用程序A1應(yīng)用程序應(yīng)用程序A2應(yīng)用程序應(yīng)用程序An數(shù)據(jù)集數(shù)據(jù)集S1數(shù)據(jù)集數(shù)據(jù)集S2數(shù)據(jù)集數(shù)據(jù)集Sn圖1-3DBMSDB(4)分布式數(shù)據(jù)庫系統(tǒng)階段)分布式數(shù)據(jù)庫系統(tǒng)階段1.1.2 數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng) 1數(shù)據(jù)庫(數(shù)據(jù)庫(DB) 數(shù)據(jù)庫數(shù)據(jù)庫就是存儲(chǔ)數(shù)據(jù)的倉庫。就是存儲(chǔ)數(shù)據(jù)的倉庫。數(shù)據(jù)庫具有數(shù)據(jù)結(jié)構(gòu)化、數(shù)據(jù)獨(dú)立性、數(shù)據(jù)數(shù)

4、據(jù)庫具有數(shù)據(jù)結(jié)構(gòu)化、數(shù)據(jù)獨(dú)立性、數(shù)據(jù)安全性、數(shù)據(jù)冗余度小、數(shù)據(jù)共享等幾個(gè)特點(diǎn)。安全性、數(shù)據(jù)冗余度小、數(shù)據(jù)共享等幾個(gè)特點(diǎn)。2數(shù)據(jù)庫管理系統(tǒng)(數(shù)據(jù)庫管理系統(tǒng)(DBMS) 數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)屬于系統(tǒng)軟件,為用戶或應(yīng)屬于系統(tǒng)軟件,為用戶或應(yīng)用程序提供訪問數(shù)據(jù)庫的方法,包括數(shù)據(jù)庫的建立、用程序提供訪問數(shù)據(jù)庫的方法,包括數(shù)據(jù)庫的建立、查詢、更新及各種數(shù)據(jù)控制。數(shù)據(jù)庫管理系統(tǒng)是數(shù)查詢、更新及各種數(shù)據(jù)控制。數(shù)據(jù)庫管理系統(tǒng)是數(shù)據(jù)庫系統(tǒng)的核心據(jù)庫系統(tǒng)的核心 。演示3數(shù)據(jù)庫系統(tǒng)(數(shù)據(jù)庫系統(tǒng)(DBS) 數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng)是指在計(jì)算機(jī)系統(tǒng)中引入數(shù)據(jù)庫是指在計(jì)算機(jī)系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng),主要由數(shù)據(jù)庫及相關(guān)硬

5、件、數(shù)據(jù)庫管理后的系統(tǒng),主要由數(shù)據(jù)庫及相關(guān)硬件、數(shù)據(jù)庫管理系統(tǒng)及其開發(fā)工具、應(yīng)用系統(tǒng)、數(shù)據(jù)庫管理員和用系統(tǒng)及其開發(fā)工具、應(yīng)用系統(tǒng)、數(shù)據(jù)庫管理員和用戶幾個(gè)部分組成。戶幾個(gè)部分組成。4數(shù)據(jù)庫應(yīng)用系統(tǒng)(數(shù)據(jù)庫應(yīng)用系統(tǒng)(DBAS) 數(shù)據(jù)庫應(yīng)用系統(tǒng)數(shù)據(jù)庫應(yīng)用系統(tǒng)是根據(jù)用戶任務(wù)需要用高級是根據(jù)用戶任務(wù)需要用高級語言編寫的可以實(shí)現(xiàn)對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行存儲(chǔ)和語言編寫的可以實(shí)現(xiàn)對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行存儲(chǔ)和檢索操作的程序。檢索操作的程序。 關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫Visual FoxProVisual FoxPro操作基礎(chǔ)及數(shù)據(jù)運(yùn)算操作基礎(chǔ)及數(shù)據(jù)運(yùn)算數(shù) 據(jù) 模 型數(shù) 據(jù) 模 型數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng)1.2 數(shù)據(jù)模型數(shù)據(jù)模

6、型 1層次模型層次模型 層次模型層次模型的基本結(jié)構(gòu)是樹型結(jié)構(gòu),自頂向下的基本結(jié)構(gòu)是樹型結(jié)構(gòu),自頂向下層次分明。層次分明。它具有以下特點(diǎn):它具有以下特點(diǎn):有且僅有一個(gè)根結(jié)點(diǎn)無雙親。有且僅有一個(gè)根結(jié)點(diǎn)無雙親。根結(jié)點(diǎn)以外的子結(jié)點(diǎn),向上有且僅有一個(gè)父結(jié)點(diǎn),根結(jié)點(diǎn)以外的子結(jié)點(diǎn),向上有且僅有一個(gè)父結(jié)點(diǎn),向下有若干子結(jié)點(diǎn)。向下有若干子結(jié)點(diǎn)??紕?wù)科安徽中醫(yī)藥大學(xué)人事處學(xué)生處財(cái)務(wù)處教務(wù)處教務(wù)科就業(yè)指導(dǎo)中心學(xué)生管理科2網(wǎng)絡(luò)模型網(wǎng)絡(luò)模型網(wǎng)絡(luò)模型網(wǎng)絡(luò)模型是呈現(xiàn)一種交叉聯(lián)系的網(wǎng)狀結(jié)構(gòu)。是呈現(xiàn)一種交叉聯(lián)系的網(wǎng)狀結(jié)構(gòu)。它具有以下特點(diǎn):它具有以下特點(diǎn):有一個(gè)以上結(jié)點(diǎn)無雙親。有一個(gè)以上結(jié)點(diǎn)無雙親。至少有一個(gè)結(jié)點(diǎn)有多于一個(gè)雙親,

7、但結(jié)構(gòu)與使用至少有一個(gè)結(jié)點(diǎn)有多于一個(gè)雙親,但結(jié)構(gòu)與使用均比較復(fù)雜。均比較復(fù)雜。網(wǎng)狀模型示意圖網(wǎng)狀模型示意圖 ( 產(chǎn)品零、部件產(chǎn)品零、部件 )A 廠廠B 廠廠C 廠廠零件零件 1零件零件 2零件零件 3零件零件 4部件部件 1部件部件 2部件部件 33關(guān)系模型關(guān)系模型關(guān)系模型關(guān)系模型是用二維表格的結(jié)構(gòu)形式來表示客觀事物及其之是用二維表格的結(jié)構(gòu)形式來表示客觀事物及其之間的聯(lián)系。在關(guān)系模型中,操作的對象和結(jié)果都是二維表間的聯(lián)系。在關(guān)系模型中,操作的對象和結(jié)果都是二維表格。格。班級學(xué)期學(xué)號姓名英語數(shù)學(xué)物理97011970101王力867997011970102劉明928497011970103吳偉75

8、68970197012970101王力8297012970102劉明9597012970103吳偉774面向?qū)ο竽P兔嫦驅(qū)ο竽P兔嫦驅(qū)ο蟮臄?shù)據(jù)模型面向?qū)ο蟮臄?shù)據(jù)模型是面向?qū)ο蠹夹g(shù)與數(shù)據(jù)庫技是面向?qū)ο蠹夹g(shù)與數(shù)據(jù)庫技術(shù)相結(jié)合的產(chǎn)物。術(shù)相結(jié)合的產(chǎn)物。 目前不是很成熟。目前不是很成熟。關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫Visual FoxProVisual FoxPro操作基礎(chǔ)及數(shù)據(jù)運(yùn)算操作基礎(chǔ)及數(shù)據(jù)運(yùn)算數(shù) 據(jù) 模 型數(shù) 據(jù) 模 型數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng)1.3 關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫 1.3.1 關(guān)系的基本概念關(guān)系的基本概念1關(guān)系的基本概念關(guān)系的基本概念(1)關(guān)系)關(guān)系 一個(gè)關(guān)系的邏輯結(jié)構(gòu)就是一張二維表。一個(gè)關(guān)系的邏輯

9、結(jié)構(gòu)就是一張二維表。 (2)元組)元組 二維表(關(guān)系)中水平方向的行稱為元組。二維表(關(guān)系)中水平方向的行稱為元組。每一行是一個(gè)元組。每一行是一個(gè)元組。 (3)屬性)屬性 二維表中垂直方向的列稱為屬性。二維表中垂直方向的列稱為屬性。每一列有一個(gè)屬性名,屬性值則是各個(gè)元組每一列有一個(gè)屬性名,屬性值則是各個(gè)元組的屬性的取值。的屬性的取值。 (4)域)域 屬性的取值范圍,即不同元組對同一屬性的屬性的取值范圍,即不同元組對同一屬性的取值所限定的范圍。取值所限定的范圍。(5)關(guān)鍵字)關(guān)鍵字 屬性或?qū)傩缘慕M合,其值能夠唯一地標(biāo)識一屬性或?qū)傩缘慕M合,其值能夠唯一地標(biāo)識一個(gè)元組。個(gè)元組。 (6)候選關(guān)鍵字)候

10、選關(guān)鍵字 關(guān)系中可以成為關(guān)鍵字的屬性或?qū)傩缘慕M合關(guān)系中可以成為關(guān)鍵字的屬性或?qū)傩缘慕M合可能不是唯一的,凡是在關(guān)系中能唯一區(qū)分、確定可能不是唯一的,凡是在關(guān)系中能唯一區(qū)分、確定不同元組的屬性或?qū)傩缘慕M合都稱為候選關(guān)鍵字。不同元組的屬性或?qū)傩缘慕M合都稱為候選關(guān)鍵字。(7)主關(guān)鍵字)主關(guān)鍵字 在候選關(guān)鍵字中選擇一個(gè)作為關(guān)鍵字,稱為在候選關(guān)鍵字中選擇一個(gè)作為關(guān)鍵字,稱為該關(guān)系的主關(guān)鍵字。主關(guān)鍵字是唯一的。該關(guān)系的主關(guān)鍵字。主關(guān)鍵字是唯一的。1.3 關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫 1.3.1 關(guān)系的基本概念關(guān)系的基本概念2關(guān)系的性質(zhì)關(guān)系的性質(zhì)(1)關(guān)系必須規(guī)范化。)關(guān)系必須規(guī)范化。 (2)在同一關(guān)系中不能出現(xiàn)相同

11、的屬性名。)在同一關(guān)系中不能出現(xiàn)相同的屬性名。 (3)關(guān)系中不允許有完全相同的元組。)關(guān)系中不允許有完全相同的元組。(4)在同一關(guān)系中元組的次序無關(guān)緊要。)在同一關(guān)系中元組的次序無關(guān)緊要。(5)在同一關(guān)系中列的次序無關(guān)緊要。)在同一關(guān)系中列的次序無關(guān)緊要。 1.3 關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫 1.3.2 關(guān)系模式關(guān)系模式對關(guān)系的描述稱為關(guān)系模式,其格式為對關(guān)系的描述稱為關(guān)系模式,其格式為:關(guān)系名(屬性名關(guān)系名(屬性名1,屬性名,屬性名2,屬性名,屬性名n)一個(gè)關(guān)系模式對應(yīng)一個(gè)關(guān)系的數(shù)據(jù)結(jié)構(gòu),即二一個(gè)關(guān)系模式對應(yīng)一個(gè)關(guān)系的數(shù)據(jù)結(jié)構(gòu),即二維表的數(shù)據(jù)結(jié)構(gòu)。對應(yīng)的二維表的描述其格式為維表的數(shù)據(jù)結(jié)構(gòu)。對應(yīng)的二

12、維表的描述其格式為:二維表名(字段名二維表名(字段名1,字段名,字段名2,字段名,字段名n)1.3 關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫 1.3.3 關(guān)系運(yùn)算關(guān)系運(yùn)算1選擇選擇從關(guān)系中找出滿足給定條件的元組的操作稱為從關(guān)系中找出滿足給定條件的元組的操作稱為選擇。選擇。 2投影投影從關(guān)系中指定若干個(gè)屬性組成新的關(guān)系稱為投從關(guān)系中指定若干個(gè)屬性組成新的關(guān)系稱為投影。影。3連接連接連接運(yùn)算將兩個(gè)關(guān)系模式連接成一個(gè)更大的關(guān)連接運(yùn)算將兩個(gè)關(guān)系模式連接成一個(gè)更大的關(guān)系模式,生成的新關(guān)系中包含滿足連接條件的元組。系模式,生成的新關(guān)系中包含滿足連接條件的元組。關(guān)系運(yùn)算舉例關(guān)系運(yùn)算舉例編號系名姓名性別03004計(jì)算機(jī)系韓東男0

13、2001外語系劉玲女03001計(jì)算機(jī)系王東男04001數(shù)學(xué)系姜瑞青男05001電子工程系翁超雷男05002電子工程系田茉莉女03002計(jì)算機(jī)系宋江明男【例1.1】 選擇關(guān)系:系名=“計(jì)算機(jī)系”編號系名姓名性別03004計(jì)算機(jī)系韓東男03001計(jì)算機(jī)系王東男03002計(jì)算機(jī)系宋江明男關(guān)系運(yùn)算舉例關(guān)系運(yùn)算舉例編號姓名課程教室05002田茉莉操作系統(tǒng)A20105002田茉莉數(shù)據(jù)結(jié)構(gòu)B50404001姜瑞青C語言A30803004韓東VFP程序設(shè)計(jì)B10203004韓東數(shù)據(jù)結(jié)構(gòu)A50403002宋江明VFP程序設(shè)計(jì)B102【例1.2】投影關(guān)系:姓名,課程姓名課程田茉莉操作系統(tǒng)田茉莉數(shù)據(jù)結(jié)構(gòu)姜瑞青C語言

14、韓東VFP程序設(shè)計(jì)韓東數(shù)據(jù)結(jié)構(gòu)宋江明VFP程序設(shè)計(jì)關(guān)系運(yùn)算舉例關(guān)系運(yùn)算舉例編號姓名課程教室05002田茉莉操作系統(tǒng)A20105002田茉莉數(shù)據(jù)結(jié)構(gòu)B50404001姜瑞青C語言A30803004韓東VFP程序設(shè)計(jì)B10203004韓東數(shù)據(jù)結(jié)構(gòu)A50403002宋江明VFP程序設(shè)計(jì)B102編號系名姓名性別03004計(jì)算機(jī)系韓東男02001外語系劉玲女03001計(jì)算機(jī)系王東男04001數(shù)學(xué)系姜瑞青男05001電子工程系翁超雷男05002電子工程系田茉莉女03002計(jì)算機(jī)系宋江明男【例1.3】 連接關(guān)系:編號=“03004”編號系名姓名性別課程教室03004計(jì)算機(jī)系韓東男VFP程序設(shè)計(jì)B102030

15、04計(jì)算機(jī)系韓東男數(shù)據(jù)結(jié)構(gòu)A5041.3 關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫 1.3.4 表間關(guān)系表間關(guān)系1一對一聯(lián)系一對一聯(lián)系 ,記做,記做1 1例如,例如,“班長班長”和和“班級班級”的聯(lián)系如圖的聯(lián)系如圖1-4所示:所示:班長班級圖1-42一對多聯(lián)系一對多聯(lián)系 , 記做記做1 n例如,例如,“學(xué)生學(xué)生”和和“課程課程”的聯(lián)系如圖的聯(lián)系如圖1-5所示:所示:學(xué)生甲大學(xué)英語高等數(shù)學(xué)計(jì)算機(jī)圖1-53多對多聯(lián)系多對多聯(lián)系 , 記做記做m n例如,例如,“教師教師”和和“課程課程”的聯(lián)系如圖的聯(lián)系如圖1-6所示:所示:教師1大學(xué)英語高等數(shù)學(xué)C語言圖1-6教師2關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫Visual FoxProVisu

16、al FoxPro操作基礎(chǔ)及數(shù)據(jù)運(yùn)算操作基礎(chǔ)及數(shù)據(jù)運(yùn)算數(shù) 據(jù) 模 型數(shù) 據(jù) 模 型數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng)1.4 Visual FoxPro操作基礎(chǔ)及數(shù)據(jù)運(yùn)算操作基礎(chǔ)及數(shù)據(jù)運(yùn)算 1.4.1 Visual FoxPro的用戶界面及輔助設(shè)計(jì)工具的用戶界面及輔助設(shè)計(jì)工具 1Visual FoxPro 60中文版的啟動(dòng)與退出中文版的啟動(dòng)與退出 (1)啟動(dòng))啟動(dòng)Visual FoxPro 6.0常用下列方法:常用下列方法:方法方法1:單擊:單擊“開始開始”菜單菜單將鼠標(biāo)指針指向?qū)⑹髽?biāo)指針指向“程程序序”將鼠標(biāo)指針指向彈出子菜單將鼠標(biāo)指針指向彈出子菜單“Microsoft Visual FoxPro 6.0

17、”選項(xiàng)選項(xiàng)再單擊彈出的子菜單再單擊彈出的子菜單 “Microsoft Visual FoxPro 6.0”命令項(xiàng)。命令項(xiàng)。方法方法2:雙擊桌面上的:雙擊桌面上的“Visual FoxPro 6.0”快捷圖快捷圖標(biāo)標(biāo) 。(2)退出)退出 Visual FoxPro 6.0常用下列方法:常用下列方法:方法方法1:單擊:單擊Visual FoxPro 6.0窗口中窗口中“文件文件”菜單,此時(shí)菜單,此時(shí)彈出彈出 一個(gè)下拉菜單,單擊一個(gè)下拉菜單,單擊“退出退出”菜單項(xiàng)。菜單項(xiàng)。方法方法2:在:在Visual FoxPro 6.0命令窗口輸入命令窗口輸入“QUIT”命令。命令。方法方法3:單擊:單擊Vis

18、ual FoxPro 6.0窗口右上角的窗口右上角的“ ”按鈕。按鈕。方法方法4:雙擊:雙擊Visual FoxPro 6.0窗口左上角的窗口左上角的“ ”圖標(biāo)。圖標(biāo)。方法方法5:先激活,再按:先激活,再按Alt+F4鍵。鍵。 方法方法6,任務(wù)管理器(考試經(jīng)常用)任務(wù)管理器(考試經(jīng)常用)。2用戶界面用戶界面由標(biāo)題欄、菜單欄、工具欄、主窗口、命令窗由標(biāo)題欄、菜單欄、工具欄、主窗口、命令窗口和狀態(tài)欄六個(gè)部分組成。口和狀態(tài)欄六個(gè)部分組成。 菜單欄菜單欄工作區(qū)工作區(qū)工具欄工具欄命令窗口命令窗口狀態(tài)欄狀態(tài)欄3Visual FoxPro 60配置配置 (1)使用)使用“選項(xiàng)選項(xiàng)”對話框進(jìn)行環(huán)境配置對話框進(jìn)

19、行環(huán)境配置 (2)使用)使用SET命令進(jìn)行環(huán)境配置命令進(jìn)行環(huán)境配置P13,修改默認(rèn)路徑:,修改默認(rèn)路徑: set default to e:jxglxt4輔助設(shè)計(jì)工具輔助設(shè)計(jì)工具 (1)向?qū)В┫驅(qū)В?)設(shè)計(jì)器)設(shè)計(jì)器(3)生成器)生成器1.4 Visual FoxPro操作基礎(chǔ)及數(shù)據(jù)運(yùn)算操作基礎(chǔ)及數(shù)據(jù)運(yùn)算 1.4.2 Visual FoxPro 6.0的工作方式與命令格式的工作方式與命令格式 1工作方式工作方式(1)單命令執(zhí)行方式)單命令執(zhí)行方式(2)程序執(zhí)行方式)程序執(zhí)行方式(3)菜單命令執(zhí)行方式)菜單命令執(zhí)行方式2命令格式命令格式 (1)命令的一般格式)命令的一般格式 FOR WHILET

20、O (2)命令格式的說明)命令格式的說明 命令關(guān)鍵字命令關(guān)鍵字是一個(gè)英文動(dòng)詞,用來指定要執(zhí)行的操作。是一個(gè)英文動(dòng)詞,用來指定要執(zhí)行的操作。范圍范圍用來指定命令可以操作的有效記錄范圍。用來指定命令可以操作的有效記錄范圍。 ALL:指當(dāng)前表中的全部記錄。:指當(dāng)前表中的全部記錄。 NEXT:指從當(dāng)前記錄開始的連續(xù):指從當(dāng)前記錄開始的連續(xù)n條記錄。條記錄。 RECORD:指當(dāng)前表中的第:指當(dāng)前表中的第n條記錄。條記錄。 REST:指從當(dāng)前記錄開始到最后一條記錄為止的:指從當(dāng)前記錄開始到最后一條記錄為止的所有記錄。所有記錄。 表達(dá)式表是由數(shù)據(jù)和運(yùn)算符一起構(gòu)成的有意義的式子,一是由數(shù)據(jù)和運(yùn)算符一起構(gòu)成的有

21、意義的式子,一般由表中字段名構(gòu)成。般由表中字段名構(gòu)成。表達(dá)式表是由一個(gè)或多個(gè)由逗號分隔開的表達(dá)式。表達(dá)式表是由一個(gè)或多個(gè)由逗號分隔開的表達(dá)式。FOR將表文件記錄指針重新指向首記錄,對滿足條件將表文件記錄指針重新指向首記錄,對滿足條件的所有記錄進(jìn)行操作。的所有記錄進(jìn)行操作。WHILE。在表文件中,從當(dāng)前記錄開始按照記錄順序自上在表文件中,從當(dāng)前記錄開始按照記錄順序自上而下掃描,只要遇到不滿足條件的記錄就結(jié)束命令,而下掃描,只要遇到不滿足條件的記錄就結(jié)束命令,不管后面是否有滿足條件的記錄。不管后面是否有滿足條件的記錄。 TO用于指定輸出方式是打印還是輸出到文件保存等。用于指定輸出方式是打印還是輸出

22、到文件保存等。 (3)命令的書寫規(guī)則)命令的書寫規(guī)則 “”:表示其中的內(nèi)容是用戶的選擇項(xiàng),通常:表示其中的內(nèi)容是用戶的選擇項(xiàng),通常有多種可能供用戶選擇其中一種。有多種可能供用戶選擇其中一種。 “ ”:表示其中的內(nèi)容是用戶的可選項(xiàng),不選時(shí):表示其中的內(nèi)容是用戶的可選項(xiàng),不選時(shí)系統(tǒng)自動(dòng)取默認(rèn)值。系統(tǒng)自動(dòng)取默認(rèn)值。 “|”:表示其中的內(nèi)容由用戶從該符號的左右兩項(xiàng):表示其中的內(nèi)容由用戶從該符號的左右兩項(xiàng)中選擇一項(xiàng)。中選擇一項(xiàng)。 “”:該符號是省略符,表示在一個(gè)命令或函數(shù):該符號是省略符,表示在一個(gè)命令或函數(shù)表達(dá)式中,某一部分可以按照同一方式重復(fù)。表達(dá)式中,某一部分可以按照同一方式重復(fù)。注意:以上符號在

23、命令窗口輸入時(shí)或在程序輸入時(shí)均注意:以上符號在命令窗口輸入時(shí)或在程序輸入時(shí)均不需要書寫。不需要書寫。如:如: LIST |DISPLAY 范圍范圍FIELDSFOROFF(4)命令書寫要點(diǎn))命令書寫要點(diǎn) (1)命令動(dòng)詞命令動(dòng)詞必須寫在命令的必須寫在命令的最前面最前面,而各短語的,而各短語的前后順序可以任意排列。前后順序可以任意排列。 (2)命令動(dòng)詞與短語之間、短語與短語之間、短語)命令動(dòng)詞與短語之間、短語與短語之間、短語的各部分之間必須用的各部分之間必須用空格空格分隔開。分隔開。 (3)命令動(dòng)詞、各短語中的保留字及函數(shù)名在不至)命令動(dòng)詞、各短語中的保留字及函數(shù)名在不至于引起混淆的情況下可以簡寫

24、為前于引起混淆的情況下可以簡寫為前4個(gè)字符,而且英文個(gè)字符,而且英文字母大小寫等效。字母大小寫等效。 (4)一條命令的長度可達(dá))一條命令的長度可達(dá)8192個(gè)字符。當(dāng)一行寫不個(gè)字符。當(dāng)一行寫不下時(shí),可在適當(dāng)位置輸入下時(shí),可在適當(dāng)位置輸入續(xù)行符續(xù)行符;并按回車鍵換行,并按回車鍵換行,繼續(xù)輸入該命令。繼續(xù)輸入該命令。1.4 Visual FoxPro操作基礎(chǔ)及數(shù)據(jù)運(yùn)算操作基礎(chǔ)及數(shù)據(jù)運(yùn)算 1.4.3 Visual FoxPro6.0的數(shù)據(jù)及其運(yùn)算的數(shù)據(jù)及其運(yùn)算 常量與變量常量與變量 常量:表示一個(gè)常量:表示一個(gè)具體的具體的、不變的不變的值。值。Data 變量變量 變量:用于變量:用于存儲(chǔ)數(shù)據(jù)存儲(chǔ)數(shù)據(jù),

25、一個(gè)變量在不同的時(shí)刻可,一個(gè)變量在不同的時(shí)刻可 以放不同的數(shù)據(jù)。以放不同的數(shù)據(jù)。變量變量常量和變量的關(guān)系常量和變量的關(guān)系常量的分類常量的分類(l)字符型常量)字符型常量 (C)由由ASCII表中的可打印字符(英文字母、數(shù)字、標(biāo)點(diǎn)符號等)表中的可打印字符(英文字母、數(shù)字、標(biāo)點(diǎn)符號等)和漢字組成的由定界符括起來的串。和漢字組成的由定界符括起來的串。定界符有定界符有3種:單引號、雙引號和方括號。種:單引號、雙引號和方括號。如: “中國” 158 visual foxpro 注:英文字母、數(shù)字、標(biāo)點(diǎn)符號占一個(gè)字節(jié),注:英文字母、數(shù)字、標(biāo)點(diǎn)符號占一個(gè)字節(jié), 漢字占兩個(gè)字節(jié)。漢字占兩個(gè)字節(jié)。其他注意:其他

26、注意: 1、定界符不能是中文符號、定界符不能是中文符號 2、定界符必須成對出現(xiàn)、定界符必須成對出現(xiàn) 3、字符常量含某種定界符時(shí),必須采用另一種、字符常量含某種定界符時(shí),必須采用另一種定界符定界符 4、 空串與空串與 空格字符串不同空格字符串不同 5、字符常量與其他類型常量的區(qū)別如:、字符常量與其他類型常量的區(qū)別如:12與與12、.T.與與.T.演示(2)數(shù)值型常量()數(shù)值型常量(N)由由數(shù)字?jǐn)?shù)字、小數(shù)點(diǎn)小數(shù)點(diǎn)和和正負(fù)號正負(fù)號構(gòu)成。構(gòu)成。 內(nèi)存中占內(nèi)存中占8個(gè)字節(jié)。個(gè)字節(jié)。 如:如:50, -23.6 6.23E-12 表示表示 6.23*10-12演示(3)邏輯型常量()邏輯型常量(L)由代表

27、真或假的符號及由代表真或假的符號及定界符定界符“. .”構(gòu)成。內(nèi)存占構(gòu)成。內(nèi)存占1個(gè)字節(jié)個(gè)字節(jié)邏輯真的表示有:邏輯真的表示有:.t.、.T.、.y.、.Y.;邏輯假的表示有:邏輯假的表示有:.f.、.F.、.n.、.N.。演示(4)日期型常量()日期型常量(D)輸出格式為:輸出格式為:mm/dd/yy輸入格式為:輸入格式為:yyyy/mm/dd 內(nèi)存占內(nèi)存占8個(gè)字節(jié)。個(gè)字節(jié)。如如:演示(5)日期時(shí)間型常量()日期時(shí)間型常量(T)輸出格式為:輸出格式為:mm/dd/yy hh:mm:ss AM|PM 輸入格式為:輸入格式為:yyyy/mm/dd hh:mm:ss AM|PM內(nèi)存占內(nèi)存占8個(gè)字節(jié)。

28、個(gè)字節(jié)。演示(6)貨幣型常量)貨幣型常量 在數(shù)字前加上貨幣符號在數(shù)字前加上貨幣符號“$” 用于表示貨幣數(shù)據(jù),小數(shù)點(diǎn)固定為4位,超過4位小數(shù)時(shí)自動(dòng)四舍五入。長度固定為8B。 如:如: $12.22 $566.7298$12.22 $566.7298演示練習(xí):判斷下列常量的類型ABC “123” .N. 03/13/06 ABC 123 N 03/13/06 2變量變量變量是指在程序運(yùn)行期間其值可被改變的量。變量名變量是指在程序運(yùn)行期間其值可被改變的量。變量名最長可包含最長可包含254個(gè)字符,是由個(gè)字符,是由字母(漢字)、數(shù)字和下劃線字母(漢字)、數(shù)字和下劃線組成,并由字母(漢字)、下劃線開頭。其

29、中,字母不分大組成,并由字母(漢字)、下劃線開頭。其中,字母不分大小寫。小寫。變量的分類變量的分類 1、內(nèi)存變量、內(nèi)存變量 2、字段變量、字段變量 3、數(shù)組變量、數(shù)組變量(1)內(nèi)存變量)內(nèi)存變量數(shù)據(jù)表結(jié)構(gòu)之外獨(dú)立存在于內(nèi)存中的存儲(chǔ)單元。數(shù)據(jù)表結(jié)構(gòu)之外獨(dú)立存在于內(nèi)存中的存儲(chǔ)單元。內(nèi)存變量的類型有數(shù)值型內(nèi)存變量的類型有數(shù)值型(N)、字符型、字符型(C)、貨幣、貨幣型型(Y)、邏輯型、邏輯型(L)、日期型、日期型(D)、日期時(shí)間型、日期時(shí)間型(T)六六種。種。 變量變量 變量:是一個(gè)可以隨時(shí)改變的變量:是一個(gè)可以隨時(shí)改變的數(shù)據(jù)容器數(shù)據(jù)容器 變量的三部分:變量的三部分:變量名變量名,變量值變量值,變量

30、類型變量類型它的類型取決于末次接受末次接受的數(shù)據(jù)的類型,一旦退出VFP系統(tǒng),內(nèi)存變量也會(huì)與系統(tǒng)一起消失。 求解三部分:看出變量名,問出變量值,測出什求解三部分:看出變量名,問出變量值,測出什么類型么類型100X=100內(nèi)存變量賦值命令內(nèi)存變量賦值命令格式格式1:STORETO格式格式2:=例:用下面兩條命令定義變量。例:用下面兩條命令定義變量。 STORE 2*3 TO al,a2 x=2*3 注意:以下語句不對! A+1=3*4 STORE 3,4 TO A,B 變量及表達(dá)式的輸出命令。變量及表達(dá)式的輸出命令。格式:格式:?|?先換行,再輸出表達(dá)式值;先換行,再輸出表達(dá)式值;?不換行,直接在

31、當(dāng)前光標(biāo)處輸出。不換行,直接在當(dāng)前光標(biāo)處輸出。保存內(nèi)存變量保存內(nèi)存變量格式:格式:SAVE TO ALL LIKE/EXCEPT 例:例:SAVE TO ABC ALL LIKE A* p保存內(nèi)存變量 SAVE TO LIKE|EXCEPTp內(nèi)存變量的恢復(fù) RESTORE FROM ADDITIVE 從指定的文件中恢復(fù)內(nèi)存變量,短語additive恢復(fù)時(shí)不清除內(nèi)存中已有的內(nèi)存變量,僅覆蓋同名的內(nèi)存變量p內(nèi)存變量的釋放 RELEASE RELEASE ALL EXTENDED LIKE|EXCEPT CLEAR MEMORY 例例.X1=23X2=683A1=“安徽合肥安徽合肥”A2=“中國北京

32、中國北京”SAVE TO AA1 ALL LIKE A*RELEASE ALL EXCEPT X*A1= “中國北京中國北京”A3= “中國上海中國上?!盧ESTORE FROM AA1 ADDILIST MEMO LIKE ?(2)字段變量1、定義:指表中已定義的任意一個(gè)字段。2、字段變量的類型:與該字段定義的類型一致。注:字段變量優(yōu)先于內(nèi)存變量。 如果內(nèi)存變量與表中的字段變量同名時(shí),用戶在引用內(nèi)存變量時(shí),要在其名字前加 M. 或 M- 說明: 字段變量就是數(shù)據(jù)表中的字段名。字段變量不能離開數(shù)據(jù)表而單獨(dú)存在。字段變量的值就是表中當(dāng)前記錄對應(yīng)的字段的值。(3)數(shù)組變量 數(shù)組變量是內(nèi)存變量的一種

33、特殊形式。定義: 數(shù)組是一組有序內(nèi)存變量的集合。每一個(gè)數(shù)組元素用數(shù)組名以及該元素在數(shù)組中排列的位置(即下標(biāo))一起表示。變量的下標(biāo)個(gè)數(shù)稱為維數(shù),只有一個(gè)下標(biāo)的數(shù)組叫一維數(shù)組,有兩個(gè)下標(biāo)的數(shù)組叫二維數(shù)組。數(shù)組使用前須先定義格式: DIMENSION | DECLARE 數(shù)組名1( ,),數(shù)組名2(,) 如定義兩個(gè)數(shù)組A、B:DIMENSION A(5),B(2,3) 注: (1)數(shù)組各元素的初始值為邏輯值.F. (2)數(shù)組下標(biāo)的起始值是1.p 數(shù)組元素的排列順序數(shù)組元素的排列順序 一維數(shù)組按下標(biāo)從小到大的順序排列。一維數(shù)組按下標(biāo)從小到大的順序排列。 二維數(shù)組的排列是先按下標(biāo)二維數(shù)組的排列是先按下標(biāo)

34、1 1,再按下標(biāo),再按下標(biāo)2 2的從小到大的順序排列。的從小到大的順序排列。 例:數(shù)組例:數(shù)組A中的中的10個(gè)排列順序?yàn)椋簜€(gè)排列順序?yàn)椋?A (1),A (2),A (10)例:數(shù)組例:數(shù)組B(2,3)的排列:)的排列:B(1,1) B(1,2) B(1,3) B(2,1) B(2,2) B(2,3) B(1,1) B(1,2)B(1,3)B(2,1) B(2,2)B(2,3) 數(shù)組的賦值可以對整個(gè)數(shù)組賦值,也可以對數(shù)組元素賦值。 格式1: STORE TO 如:DIMENSION A(5) STORE 20 TO A(1),A(2) 格式2: = 如:A=20 A(1)=“123” 同一數(shù)組

35、中的不同元素的數(shù)據(jù)類型可以不一致。 如:DIMENSION A(3) A(1)=20 A(2)=.T. A(3)=ABC 數(shù)組的輸出(與變量同) ? | ? ? 如: ? a(1),a(2),a(3)表達(dá)式表達(dá)式 將常量、變量和函數(shù)用運(yùn)算符連接起來的式子稱將常量、變量和函數(shù)用運(yùn)算符連接起來的式子稱為表達(dá)式。為表達(dá)式。 表達(dá)式示例表達(dá)式示例 (a+b+c)/d)*x Date()-2014/10/1 2+1=3 and 1+12表達(dá)式會(huì)錯(cuò)嗎?表達(dá)式會(huì)錯(cuò)嗎?+= ?任何運(yùn)算符兩側(cè)的數(shù)據(jù)對象必須具有相同的數(shù)據(jù)類型數(shù)據(jù)類型,否則運(yùn)算將會(huì)出錯(cuò)運(yùn)算符及表達(dá)式1 算術(shù)運(yùn)算符2 字符運(yùn)算符3 日期和日期時(shí)間運(yùn)

36、算符4 關(guān)系運(yùn)算符5 邏輯運(yùn)算符6 名稱表達(dá)式1 算術(shù)運(yùn)算符優(yōu)先級運(yùn)算符說明示例結(jié)果1( )括號2*(1+2)62*或乘方2*383* 、 /乘、除3*6/294%求余運(yùn)算 8%325+ 、 -加、減3+8-29數(shù)值表達(dá)式由數(shù)值型常量、變量、函數(shù)和算術(shù)運(yùn)算符構(gòu)成。運(yùn)算結(jié)果仍為數(shù)值型數(shù)據(jù)。例例1:計(jì)算513235 5 4 ,并輸出結(jié)果 ?51/32-35/5*4練習(xí):練習(xí):1. 設(shè)設(shè)a=5,b=8,c=6數(shù)學(xué)式:數(shù)學(xué)式: FoxPro表達(dá)式表達(dá)式: -a-a* *(b+2)/2+c(b+2)/2+c* *3-43-4* *sqrt(4+8)+log(5)/abs(-5)sqrt(4+8)+log

37、(5)/abs(-5)注:注:書寫數(shù)值表達(dá)式時(shí)應(yīng)注意根號、絕對值、書寫數(shù)值表達(dá)式時(shí)應(yīng)注意根號、絕對值、指數(shù)、對數(shù)和分式的寫法。指數(shù)、對數(shù)和分式的寫法。寫成寫成2 字符運(yùn)算符運(yùn)算符說 明示 例結(jié)果前后兩個(gè)字符串首尾連接形成一個(gè)新的字符串信息 +科學(xué)信息 科學(xué)將前面字符串的尾部空格移到后面的字符串尾部,再連接信息 -科學(xué)信息科學(xué) 字符表達(dá)式由字符表達(dá)式由字符型常量、變量、字符型函數(shù)和字符型常量、變量、字符型函數(shù)和字符運(yùn)算符字符運(yùn)算符構(gòu)成,運(yùn)算結(jié)果仍為構(gòu)成,運(yùn)算結(jié)果仍為字符型數(shù)據(jù)字符型數(shù)據(jù)。注意:注意:兩個(gè)日期不能相加;日期與日期時(shí)間型兩個(gè)日期不能相加;日期與日期時(shí)間型不能相減不能相減格式一格式一:

38、 :日期日期 n n 返回日期返回日期( (加天數(shù)加天數(shù)) ) 日期時(shí)間日期時(shí)間 n n 返回日期時(shí)間返回日期時(shí)間( (加秒數(shù)加秒數(shù)) )格式二格式二: :日期日期- -日期日期 返回天數(shù)返回天數(shù) 日期時(shí)間日期時(shí)間- -日期時(shí)間日期時(shí)間 返回秒數(shù)返回秒數(shù)3 日期時(shí)間表達(dá)式4 關(guān)系運(yùn)算符運(yùn)算符說明示例結(jié)果小于 ?3*2大于 ?32 .T.=等于 ?3=2 .F.或#或!=不等于 ?46 .T. =小于或等于 ?3*2=大于或等于 ?15=8+2 .T.= =字符串精確比較 ?AB =AB .F.$子串包含測試 ?is$This .T.關(guān)系表達(dá)式可由關(guān)系表達(dá)式可由關(guān)系運(yùn)算符和字符表達(dá)式、算術(shù)關(guān)系運(yùn)

39、算符和字符表達(dá)式、算術(shù)表達(dá)式、時(shí)間日期表達(dá)式表達(dá)式、時(shí)間日期表達(dá)式組成。組成。其運(yùn)算結(jié)果為其運(yùn)算結(jié)果為邏輯型常量邏輯型常量。關(guān)系運(yùn)算是運(yùn)算符兩邊同類型元素的比較,關(guān)系關(guān)系運(yùn)算是運(yùn)算符兩邊同類型元素的比較,關(guān)系成立結(jié)果為(成立結(jié)果為(.T.T.);反之,結(jié)果為();反之,結(jié)果為(.F.F.)。)。例子例子 ?“A”8 結(jié)果為結(jié)果為: .T. ? “ABC”=“AB” 結(jié)果為結(jié)果為: .T. ? “ABC”=“AB” 結(jié)果為結(jié)果為: .F. ?.T.F. 結(jié)果為結(jié)果為: .T. ?02/05/2010=02/05/2010 結(jié)果為結(jié)果為: .T.關(guān)系比較規(guī)則 數(shù)值型和貨幣型數(shù)據(jù)比較:按數(shù)值的大小比

40、較。 字符串比較:從左到右逐個(gè)字符進(jìn)行比較,當(dāng)遇到第一個(gè)不相同的字符時(shí),它們的大小就決定了字符串的大??; 日期或日期時(shí)間型數(shù)據(jù)比較:越早的越小,反之越大。 邏輯型數(shù)據(jù)比較:.T.大于.F. 字符型數(shù)據(jù)比較的是字符ASCII碼的先后排列順序5 邏輯運(yùn)算符邏輯表達(dá)式由邏輯運(yùn)算符將邏輯型數(shù)據(jù)連接起來邏輯表達(dá)式由邏輯運(yùn)算符將邏輯型數(shù)據(jù)連接起來而形成,其運(yùn)算結(jié)果仍然是而形成,其運(yùn)算結(jié)果仍然是邏輯型數(shù)據(jù)邏輯型數(shù)據(jù)。邏輯運(yùn)算符及優(yōu)先順序邏輯運(yùn)算符及優(yōu)先順序:!或:!或NOT;AND;OR基本運(yùn)算法則:基本運(yùn)算法則: NOTNOT或或! ! :邏輯非(取反)運(yùn)算邏輯非(取反)運(yùn)算。NOT .F.=.T. NO

41、T .F.=.T. AND AND: 邏輯與運(yùn)算邏輯與運(yùn)算( (相對于乘,相對于乘,1 1* *0 0為為0)0)。只有當(dāng)只有當(dāng)A A和和B B都為都為.T.T.時(shí),時(shí),A AND B A AND B 才為才為.T.T. OR OR: 邏輯或運(yùn)算。邏輯或運(yùn)算。只要只要A A或或B B一個(gè)為一個(gè)為.T.T.時(shí),時(shí),A OR B A OR B 就為就為.T.T.邏輯運(yùn)算真值表邏輯運(yùn)算真值表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.運(yùn)算符優(yōu)先級圓括號( )算術(shù)運(yùn)算符、字符串運(yùn)算符和日期時(shí)間運(yùn)算符關(guān)系運(yùn)算符邏

42、輯運(yùn)算符。練習(xí)1x=ABCD y=DEF z=8答案: .F.練習(xí)2x=3 y=5 z=7答案: .F.1.4.4 函數(shù) 函數(shù)及參數(shù) 函數(shù)(FunctionFunction)是一個(gè)預(yù)先編制好的程序代碼,可供用戶或程序調(diào)用。 參數(shù)(ArgumentArgument)是供函數(shù)或過程操作的一個(gè)值。 函數(shù)可分為系統(tǒng)函數(shù)和“用戶自定義函數(shù)”。 函數(shù)由VFP提供的,稱為系統(tǒng)函數(shù)。 函數(shù)由用戶定義的,稱為“用戶自定義函數(shù)”。 2.函數(shù)的一般形式: 函數(shù)名(自變量表) 注:操作數(shù)由系統(tǒng)自動(dòng)提供而不需要輸入時(shí), 圓括號不可以省略,此時(shí)函數(shù)的形式為: 函數(shù)名() 3.函數(shù)值的輸出顯示: ?函數(shù)名(自變量表) 或:

43、 變量名=函數(shù)名(自變量表) 系統(tǒng)函數(shù)的分類1.VFPVFP提供了大量的系統(tǒng)函數(shù),主要有: (1) 數(shù)值運(yùn)算函數(shù) (2) 字符串運(yùn)算函數(shù) (3) 日期和時(shí)間函數(shù) (4) 轉(zhuǎn)換函數(shù) (5) 測試函數(shù) (6) 庫文件函數(shù) (7) 顯示信息函數(shù)、條件判斷函數(shù)、打開文件函數(shù)(1) 取整函數(shù)格式:INT()功能:取表達(dá)式的整數(shù)部分()。例如:例如:?INT(3.5) 3 ?INT(3/2)=3/2 .F.數(shù)值運(yùn)算函數(shù)數(shù)值運(yùn)算函數(shù)(2) 平方根函數(shù)格式:SQRT()功能:求的算術(shù)平方根。例:?SQRT(2),SQRT(256)(3) 最大值函數(shù)格式:MAX(表達(dá)式1,表達(dá)式n)例 ?MAX(7,5,11)

44、 11 ?MAX(“My”,“Your”) Your ?MAX(2004-10-1,2003-05-15) 2004-10-1 ?MAX(專業(yè),班級) 專業(yè)格式:ROUND(,) 功能:對的值進(jìn)行四舍五入,保留小數(shù)的位數(shù)由決定。 例: ?ROUND(1243.3467,3) 1243.347 ?ROUND(247.51,0) 248 ?ROUND(1356.55,-2) 1400(4) 四舍五入函數(shù)(5) pi()函數(shù)函數(shù) 函數(shù)返回圓周率的值。格式:MOD(,)功能:求除以的余數(shù)。1.函數(shù)值符號規(guī)律(余數(shù)的符號) mod(負(fù)負(fù),正正)=正正 mod(正正,負(fù)負(fù))=負(fù)負(fù) 結(jié)論:兩個(gè)整數(shù)求余時(shí),其

45、值的符號為除數(shù)的符結(jié)論:兩個(gè)整數(shù)求余時(shí),其值的符號為除數(shù)的符號。號。 2.異號取值規(guī)律 先將兩個(gè)整數(shù)看作是正數(shù),再作除法運(yùn)算先將兩個(gè)整數(shù)看作是正數(shù),再作除法運(yùn)算 能整除時(shí),其值為能整除時(shí),其值為0 不能整除時(shí),其值不能整除時(shí),其值=除數(shù)除數(shù)(整商整商+1)-被除數(shù)被除數(shù) (5) 求余函數(shù)(或求模函數(shù))被除數(shù)被除數(shù)除數(shù)除數(shù)(5) 求余函數(shù)(或求模函數(shù))異號求值步驟異號求值步驟1、先將兩個(gè)整數(shù)看作是正數(shù)、先將兩個(gè)整數(shù)看作是正數(shù)2、除數(shù)、除數(shù)(整商整商+1)-被除數(shù)被除數(shù)3、判斷正負(fù)號、判斷正負(fù)號例: ? MOD(50,7),MOD(50,-7) 1 -6 ?MOD(-50,7),MOD(-50,-

46、7) 6 -1 2 字符函數(shù)名 稱格 式類型功 能 宏替換&.C替換字符型內(nèi)存變量的內(nèi)容 刪左空格LTRIM()C刪除字符串左邊的所有空格 刪右空格RTRIM()TRIM()C刪除字符串右邊的所有空格刪左右空格ALLTRIM()C刪除字符串左邊和右邊的所有空格 子串搜索AT(,)N搜尋字符串1在字符串2中出現(xiàn)的位置 左截子串LEFT(,)C從字符串首字符開始向右截取字符, 截取字符個(gè)數(shù)由數(shù)值表達(dá)式確定 右截子串RIGHT(,)C從字符串末字符開始向左截取字符, 截取字符個(gè)數(shù)由數(shù)值表達(dá)式確定格式:格式:&.功能:取字符型內(nèi)存變量的值。功能:取字符型內(nèi)存變量的值。若若 與后面的字符無空格分隔,與后

47、面的字符無空格分隔,則必須用圓點(diǎn)分隔。則必須用圓點(diǎn)分隔。(1) 宏代換函數(shù)&例:例:X=“張強(qiáng)張強(qiáng) ?“歡迎歡迎&X.同志同志” 歡迎張強(qiáng)同志歡迎張強(qiáng)同志字符函數(shù)字符函數(shù)(2) 子字符串定位函數(shù)格式:AT(,)功能:返回在中的起始位置值例:?AT(“student”,“ I am a student!”) 8 ?AT(“Student”,“ I am a student!”) 0 ?ATC(“Student”,“ I am a student!”) 8若字符表達(dá)式2中沒有包含字符表達(dá)式1,則函數(shù)返回值為0區(qū)分大小寫區(qū)分大小寫不區(qū)分大小寫不區(qū)分大小寫(3) 取子字符串函數(shù)格式:SUBSTR(,)

48、功能:在中從截取若干個(gè)字符。例例: ? SUBSTR(“中國合肥中國合肥”,5,2) 合合 ? SUBSTR(“中國合肥中國合肥”,5) 合肥合肥說明:另兩個(gè)截取子串的函數(shù): RIGHT(,) 從右邊取若干個(gè)字符。 LEFT(,) 從左邊取若干個(gè)字符。例:? RIGHT(“ABCDEF”,3) DEF ? LEFT(“中醫(yī)學(xué)院”,4) 中醫(yī)(4) 字符串重復(fù)(復(fù)制)格式:REPLICATE(,) 例:? REPLICATE(*,6) *(5)(5)子串替換子串替換格式:格式:STUFF (,)例如:例如:? STUFF ( “合格比例減少合格比例減少”,9,4, “增增加加”) 合格比例增加合

49、格比例增加(6)字符串匹配格式:LIKE(,)功能:判定表示的字符串是否與表示的字符串注: 中可含通配符*和? 例:? LIKE(*分析,藥物分析) .T. ? LIKE(?分析,藥物分析) .F.*可以代替若干可以代替若干個(gè)字符個(gè)字符?僅可以代替一個(gè)僅可以代替一個(gè)字符字符3 常用日期和時(shí)間函數(shù)常用日期和時(shí)間函數(shù)名 稱格 式類型功 能系統(tǒng)時(shí)間TIME()C返回當(dāng)前的系統(tǒng)時(shí)間系統(tǒng)日期DATE()D返回當(dāng)前的系統(tǒng)日期日期時(shí)間DATETIME()T返回當(dāng)前的系統(tǒng)日期和時(shí)間 年函數(shù)YEAR()N從表達(dá)式中求出年份數(shù)值 月函數(shù)MONTH()N從表達(dá)式中求出月份數(shù)值 文字月CMONTH()C從表達(dá)式中求出

50、月份名 日函數(shù)DAY()N從表達(dá)式中求出日份數(shù)值 星期函數(shù)DOW()N從表達(dá)式中求出星期數(shù)值 文字星期CDOW()C從表達(dá)式中求出星期名 時(shí)函數(shù)HOUR()N從表達(dá)式中求出小時(shí)數(shù)值 分函數(shù)MINUTE()N從表達(dá)式中求出分?jǐn)?shù)值 秒函數(shù)SEC()N從表達(dá)式中求出秒數(shù)值4 數(shù)據(jù)類型轉(zhuǎn)換函數(shù)名 稱 與 格 式類型功 能STR(,)C將數(shù)值型數(shù)據(jù)轉(zhuǎn)換成字符型數(shù)據(jù), 長度和小數(shù)值分別指出結(jié)果字符串的長度和小數(shù)位數(shù)VAL()N將字符型數(shù)據(jù)轉(zhuǎn)換成數(shù)值型數(shù)據(jù)ASC()N將字符串首字符轉(zhuǎn)換成對應(yīng)ASCII碼值CHR()C將ASCII碼值轉(zhuǎn)換成對應(yīng)字符CTOD()CTOT()DT將字符型數(shù)據(jù)轉(zhuǎn)換成日期型數(shù)據(jù)將字符

51、型數(shù)據(jù)轉(zhuǎn)換成日期時(shí)間型數(shù)據(jù)(1)數(shù)值轉(zhuǎn)換為字符串 功能:將 的值轉(zhuǎn)換為字符串,實(shí)現(xiàn)數(shù)值型到字符型的轉(zhuǎn)換。 決定轉(zhuǎn)換結(jié)果的字符串總長度,指定轉(zhuǎn)換結(jié)果小數(shù)部分的數(shù)字字符個(gè)數(shù)。小數(shù)點(diǎn)和正負(fù)號各計(jì)算一位計(jì)入總長度中,小數(shù)點(diǎn)和正負(fù)號各計(jì)算一位計(jì)入總長度中,若若 2小于小于 1值的整數(shù)位數(shù),則返值的整數(shù)位數(shù),則返回由回由“* *”組成的字符串。組成的字符串。若省略若省略 3,則認(rèn)為小數(shù)位為,則認(rèn)為小數(shù)位為0 0;若同時(shí)省略若同時(shí)省略 2 ,則整數(shù)位數(shù)默認(rèn)為,則整數(shù)位數(shù)默認(rèn)為1010。例例: ?STR(37.14926,5,2),STR(37.14926,4,2),; STR(37.14926,4,0) 結(jié)

52、果:結(jié)果:37.15 37.1 37 S=25.41476*10 ? “S大約為:大約為:”+STR(S,7,3) 結(jié)果:結(jié)果: S大約為:大約為: 254.148 (2)字符串轉(zhuǎn)換成數(shù)值 格式:VAL() 功能:將由數(shù)值組成的字符串轉(zhuǎn)換為數(shù)值。 注: 轉(zhuǎn)換從最左非空字符開始,一直到非數(shù)字符為止。 如果第一個(gè)字符就為非數(shù)字字符,則函數(shù)值返回0。 例:?VAL(234.56)+12.34 結(jié)果: 246.90 S=56DEF ?VAL(S)*2 結(jié)果: 112 ?VAL(A3) 結(jié)果: 0 (3)字符轉(zhuǎn)換為ASCII碼格式:ASC()功能:返回最左字符的ASCII碼。例:?ASC(ASD) 65

53、 X=123 ?ASC(X) 49(4)ASCII碼轉(zhuǎn)換為相應(yīng)的字符 CHR() 功能:返回以的值為ASCII碼對應(yīng)的字符。 例: ?CHR(97) a (5 5) 字符轉(zhuǎn)換為日期字符轉(zhuǎn)換為日期 格式:格式:CTOD() 功能:將指定的字符串轉(zhuǎn)換為相應(yīng)的日期。功能:將指定的字符串轉(zhuǎn)換為相應(yīng)的日期。(6)日期轉(zhuǎn)換為字符 格式:DTOC(,1) 功能:將日期型數(shù)據(jù)轉(zhuǎn)換成字符型數(shù)據(jù),若選參數(shù)1,則輸出格式為年月日:yyyymmdd 8 位字符 例:? DTOC(1997/07/01)5 測試函數(shù)名稱格 式類型功 能數(shù)據(jù)類型測試TYPE ()C 字符或備注型G 通用型N 數(shù)值型D 日期型Y 貨幣型T

54、日期時(shí)間型L 邏輯型X Null值O 對象型U 未定義當(dāng)無時(shí),返回的數(shù)據(jù)類型;當(dāng)包含時(shí),若其值為.T.且值為NULL則返回邏輯型L,否則返回X以表明為NULL值名 稱格 式類型功 能表尾測試EOF(|別名)L判斷記錄指針是否指向文件尾表首測試BOF(|別名)L判斷記錄指針是否指向文件頭記錄號測試RECNO(|別名)N返回記錄指針?biāo)赶蛴涗浀挠涗浱栍涗泜€(gè)數(shù)測試RECCOUNT(|別名)N返回?cái)?shù)據(jù)庫文件的記錄個(gè)數(shù)查找測試FOUND()L測試滿足條件的記錄是否找到按鈕數(shù)值012345含義 確定確定 取消放棄 重試 忽略是 否 取消是 否重試 取消圖標(biāo)形狀值16324864含義Stop?!I默認(rèn)值0256512含義默認(rèn)第1個(gè)默認(rèn)第2個(gè)默認(rèn)第3個(gè)返回值1234567含義Ok 確 定Cancel取 消Abort放 棄Retry重 試Ignore 忽 略Yes 是No 否格式:MESSAGEBOX(提示文本,對話框類型,對話框標(biāo)題)功能:顯示用戶定義的對話框,對話框類型一般為:按鈕數(shù)值+圖標(biāo)形狀值+默認(rèn)值。對話框的類型及含義見下表。6.顯示信息函數(shù)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論