數(shù)據(jù)庫基礎(chǔ)理論-整套課件完整版電子教案課件匯總(最新)_第1頁
數(shù)據(jù)庫基礎(chǔ)理論-整套課件完整版電子教案課件匯總(最新)_第2頁
數(shù)據(jù)庫基礎(chǔ)理論-整套課件完整版電子教案課件匯總(最新)_第3頁
數(shù)據(jù)庫基礎(chǔ)理論-整套課件完整版電子教案課件匯總(最新)_第4頁
數(shù)據(jù)庫基礎(chǔ)理論-整套課件完整版電子教案課件匯總(最新)_第5頁
已閱讀5頁,還剩471頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、1第一章數(shù)據(jù)庫基礎(chǔ)理論 2OUTLINE 1-1 數(shù)據(jù)庫基本概念 1-2 數(shù)據(jù)模型 1-3 關(guān)系數(shù)據(jù)庫 31-1 數(shù)據(jù)庫基本概念 1數(shù)據(jù) 記錄客觀事物屬性的邏輯符號。數(shù)據(jù)有多種形式,如文字、數(shù)碼、符號、圖形、圖像以及聲音等。2. 信息 信息是經(jīng)過對數(shù)據(jù)加工處理后對人各種活動產(chǎn)生影響有價值的數(shù)據(jù)。43. 數(shù)據(jù)處理 數(shù)據(jù)處理是用計(jì)算機(jī)收集、記錄數(shù)據(jù),經(jīng)加工產(chǎn)生新的信息形式的技術(shù)。計(jì)算機(jī)數(shù)據(jù)處理主要包括8個方面: 數(shù)據(jù)采集 數(shù)據(jù)計(jì)算 數(shù)據(jù)轉(zhuǎn)換 數(shù)據(jù)存儲 數(shù)據(jù)分組 數(shù)據(jù)檢索 數(shù)據(jù)組織 數(shù)據(jù)排序 54. 數(shù)據(jù)管理技術(shù)的發(fā)展 (1)、 人工管理階段 數(shù)據(jù)不保存應(yīng)用程序中包含自己要用到的全部數(shù)據(jù)數(shù)據(jù)不共享數(shù)

2、據(jù)不具有獨(dú)立性6圖1.1 人工管理階段的數(shù)據(jù)和程序之間的關(guān)系 7(2)、 文件管理階段 數(shù)據(jù)可以長期保存由文件系統(tǒng)管理數(shù)據(jù)數(shù)據(jù)共享性差,冗余度大數(shù)據(jù)獨(dú)立性差89(3)數(shù)據(jù)庫系統(tǒng)階段 實(shí)現(xiàn)數(shù)據(jù)共享減少數(shù)據(jù)的冗余度數(shù)據(jù)的獨(dú)立性數(shù)據(jù)實(shí)現(xiàn)集中控制數(shù)據(jù)一致性和可維護(hù)性 安全性控制 完整性控制 并發(fā)控制 故障的發(fā)現(xiàn)和恢復(fù)10116、數(shù)據(jù)庫管理系統(tǒng) 數(shù)據(jù)庫管理系統(tǒng)(Database Management System)是一種操縱和管理數(shù)據(jù)庫的大型軟件,是用于建立、使用和維護(hù)數(shù)據(jù)庫,簡稱DBMS。 12OracleMicrosoft SQL ServerMicrosoft AccessVisual Foxpr

3、o137 、數(shù)據(jù)庫系統(tǒng) 數(shù)據(jù)庫系統(tǒng)一般由4個部分組成:(1)數(shù)據(jù)庫(2)數(shù)據(jù)庫管理系統(tǒng)(DBMS)(3)數(shù)據(jù)庫管理員(DBA)(4)用戶和應(yīng)用程序。14對數(shù)據(jù)庫系統(tǒng)的基本要求是:能夠保證數(shù)據(jù)的獨(dú)立性冗余數(shù)據(jù)少,數(shù)據(jù)共享程度高系統(tǒng)的用戶接口簡單,用戶容易掌握,使用方便能夠確保系統(tǒng)運(yùn)行可靠,出現(xiàn)故障時能迅速排除有重新組織數(shù)據(jù)的能力具有可修改性和可擴(kuò)充性能夠充分描述數(shù)據(jù)間的內(nèi)在聯(lián)系 158、 數(shù)據(jù)庫應(yīng)用系統(tǒng) 數(shù)據(jù)庫應(yīng)用系統(tǒng)是針對某個特定目標(biāo),建立在數(shù)據(jù)庫管理系統(tǒng)之上的計(jì)算機(jī)應(yīng)用系統(tǒng) 組成數(shù)據(jù)庫應(yīng)用系統(tǒng)的要素有數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)(DBMS)、應(yīng)用程序和用戶 16【例1-1】數(shù)據(jù)庫應(yīng)用系統(tǒng)簡介17經(jīng)

4、常使用“售票系統(tǒng)”的售票員必須掌握數(shù)據(jù)庫知識嗎? 您好,請問最早的到成都的火車是什么時候,還有臥鋪嗎?我來幫您查一查火車站售票大廳內(nèi)售票系統(tǒng)查詢一個小時之后有次車,只剩下中鋪和上鋪?zhàn)?,請問您要訂票嗎?那請您給我訂一張中鋪的車票吧!打印車票我們經(jīng)常聽到的“售票系統(tǒng)”、“圖書管理系統(tǒng)”等到底是什么呢? 18選擇最佳解決方案直接操作:對用戶進(jìn)行數(shù)據(jù)庫知識培訓(xùn),使他們能對數(shù)據(jù)庫記錄進(jìn)行增、刪、改間接使用:即由專門的數(shù)據(jù)庫管理員根據(jù)用戶需要對數(shù)據(jù)庫資料進(jìn)行訪問,再反饋給用戶借助程序訪問:開發(fā)一套建立在已有數(shù)據(jù)庫管理系統(tǒng)之上的面向用戶的計(jì)算機(jī)應(yīng)用系統(tǒng)19相關(guān)概念 數(shù)據(jù)庫:強(qiáng)調(diào)數(shù)據(jù)數(shù)據(jù)庫管理系統(tǒng):強(qiáng)調(diào)系統(tǒng)

5、軟件數(shù)據(jù)庫應(yīng)用系統(tǒng):強(qiáng)調(diào)數(shù)據(jù)庫的整個運(yùn)行系統(tǒng),是以,某個特定數(shù)據(jù)庫為基礎(chǔ)的計(jì)算機(jī)應(yīng)用系統(tǒng),其作用就是使用戶不能直接干預(yù)數(shù)據(jù)庫而又方便訪問數(shù)據(jù)庫中的資料。20數(shù)據(jù)庫應(yīng)用系統(tǒng)要素關(guān)系圖 數(shù)據(jù)庫管理員開發(fā)人員終端用戶用戶應(yīng)用程序數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫21思考找一個日常生活中用的的數(shù)據(jù)庫管理系統(tǒng),找出系統(tǒng)中終端用戶、開發(fā)人員、數(shù)據(jù)庫管理人員分別對應(yīng)相關(guān)是什么人的身份 22接口 數(shù)據(jù)庫應(yīng)用系統(tǒng)是系統(tǒng)開發(fā)員通過調(diào)用DBMS提供的編程接口開發(fā)出來的。應(yīng)用程序要使用數(shù)據(jù)庫也必須通過此接口 。23數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)的一般過程 需求分析系統(tǒng)設(shè)計(jì)系統(tǒng)實(shí)現(xiàn)系統(tǒng)測試與維護(hù)24服務(wù)器(B/S)模式25客戶/服務(wù)器(C/S)

6、模式26開發(fā)工具 獨(dú)立于具體的數(shù)據(jù)庫管理系統(tǒng)的開發(fā)工具有,Visual Basic、Powerbuilder、CBuilder、Delphi等;提供了應(yīng)用程序開發(fā)工具的數(shù)據(jù)庫管理系統(tǒng)有:Oracle、DB2、Foxpro、Access等,它們不僅具有數(shù)據(jù)庫管理系統(tǒng)的功能,還能直接用于開發(fā)應(yīng)用程序 271-2 數(shù)據(jù)模型 1 、基本概念 概念模型,作為從現(xiàn)實(shí)世界到其數(shù)據(jù)世界轉(zhuǎn)換的中間模型,它不考慮數(shù)據(jù)的操作,而只是用比較有效的、自然的方式來描述現(xiàn)實(shí)世界的數(shù)據(jù)及其聯(lián)系。數(shù)據(jù)模型是數(shù)據(jù)庫系統(tǒng)的核心和基礎(chǔ)282、 常用數(shù)據(jù)模型 層次模型有且僅有一個結(jié)點(diǎn)無雙親,這個結(jié)點(diǎn)稱為根結(jié)點(diǎn)其它結(jié)點(diǎn)有且僅有一個雙親,

7、29302、網(wǎng)狀模型 允許有一個以上的結(jié)點(diǎn)無雙親;允許一個結(jié)點(diǎn)可以有多于一個的雙親 31323、關(guān)系模型關(guān)系中每一數(shù)據(jù)項(xiàng)不可再分,是最基本的單位;每一豎列數(shù)據(jù)項(xiàng)是同屬性的。列數(shù)根據(jù)需要而設(shè),且各列的順序是任意的;每一橫行記錄由一個事物的諸多屬性項(xiàng)構(gòu)成。記錄的順序可以是任意的;一個關(guān)系是一張二維表,不允許有相同的字段名,也不允許有相同的記錄行。331-3 關(guān)系數(shù)據(jù)庫 1、 關(guān)系術(shù)語 (1)基本術(shù)語關(guān)系:一關(guān)系就是一張二維表元組:表中的行稱為元組,對應(yīng)存儲文件中的一個記錄值屬性:表中的列稱為屬性域:屬性的取值范圍關(guān)鍵字:屬性或?qū)傩缘慕M合,其值能夠唯一地標(biāo)識一個元組的最少個數(shù)的屬性組合34外關(guān)鍵字:

8、如果一個關(guān)系中的屬性或?qū)傩越M并非該關(guān)系的關(guān)鍵字,但它們是另外一個關(guān)系的關(guān)鍵字,則稱其為該(本)關(guān)系的外關(guān)鍵字。有了外關(guān)鍵字,才能實(shí)現(xiàn)關(guān)系之間的動態(tài)聯(lián)接。關(guān)系模式:一組被命名的相關(guān)屬性的集合。其格式為: 關(guān)系名(屬性名1,屬性名2,。屬性名n)元數(shù):關(guān)系模式中屬性的數(shù)目是關(guān)系的元數(shù)關(guān)系模型:若干個關(guān)系模式的集合,其基本的數(shù)據(jù)結(jié)構(gòu)是二維表,關(guān)系之間的聯(lián)系是通過不同關(guān)系中的公共屬性來體現(xiàn)的35投影運(yùn)算 從關(guān)系模式中挑選若干屬性組成新的關(guān)系稱為投影。這是從列的角度進(jìn)行的運(yùn)算,相當(dāng)于對關(guān)系進(jìn)行垂直分解 如:LIST FIELDS 單位,姓名聯(lián)接運(yùn)算 聯(lián)接是將兩個關(guān)系模式通過公共的屬性名拼接成一個更寬的關(guān)

9、系模式,生成新關(guān)系中包含滿足聯(lián)接條件的元組。 如:將定單關(guān)系和商品關(guān)系用貨號進(jìn)行聯(lián)接,可以得到“庫存量”大于“訂購量”的商品清單。362、 關(guān)系的規(guī)范化 (1)第一范式 (lNF)屬于第一范式的關(guān)系應(yīng)滿足的基本條件是元組中的每一個分量都必須是不可分割的數(shù)據(jù)項(xiàng)37表1.1 不滿足第一范式憑證字號科目代碼科目名稱摘要借方金額貸方金額憑證字憑證號付11001現(xiàn)金略1000.00付11101銀行存款略1000.00收11101銀行存款略500.00收11131應(yīng)收賬款略500.00付21301其他貸幣資金略900.00付21001現(xiàn)金略900.00382、第二范式 (2NF) 所謂第二范式,指的是這種

10、關(guān)系不僅滿足第一范式,而且所有非主屬性完全依賴于其主鍵 3940(3)第三范式 (3NF) 所謂第三范式,指的是這種關(guān)系不僅滿足第二范式,而且它的任何一個非主屬性都不傳遞依賴于任何主關(guān)鍵字 41423、 關(guān)系數(shù)據(jù)庫 以面向系統(tǒng)的觀點(diǎn)組織數(shù)據(jù),使數(shù)據(jù)具有最小的冗余度,支持復(fù)雜的數(shù)據(jù)結(jié)構(gòu)具有高度的數(shù)據(jù)和程序的獨(dú)立性,用戶的應(yīng)用程序與數(shù)據(jù)的邏輯結(jié)構(gòu)和數(shù)據(jù)的物理存儲方式無關(guān)43由于數(shù)據(jù)具有共享性,使數(shù)據(jù)庫中的數(shù)據(jù)能為多個用戶服務(wù)關(guān)系數(shù)據(jù)庫允許多個用戶同時訪問,同時提供了各種控制功能,保證數(shù)據(jù)得到安全性、完整性和并發(fā)性控制。44第二章Visual FoxPro基礎(chǔ)知識 45第2章 Visual FoxP

11、ro基礎(chǔ)知識OUTLINE2-1 Visual FoxPro 9.0的安裝2-2 Visual FoxPro的啟動和退出 2-3 Visual FoxPro系統(tǒng)環(huán)境窗口2-4 Visual FoxPro的輔助設(shè)計(jì)工具2-5 項(xiàng)目管理器 462-1 Visual FoxPro 9.0的安裝 2-1-1 Visual FoxPro 9.0的安裝環(huán)境2-1-2 Visual FoxPro 9.0的安裝過程472-1-1 Visual FoxPro 9.0的安裝環(huán)境安裝Visual FoxPro 9.0需要的最低軟硬件配置如下:(1)處理器:奔騰(或更高)的處理器。(2)內(nèi)存:64MB(推薦128MB

12、或以上)。(3)硬盤空間:安裝所必需的系統(tǒng)組件需要20MB空間, Visual FoxPro 9.0最小化安裝需要115MB空間,最大化安裝需要155MB空間。(4)顯示器:最低分辨率800600,256色(推薦16位增強(qiáng)色以上)。(5)操作系統(tǒng): Visual FoxPro 9.0支持Windows 98、Windows Me、 Windows 2000 Service Pack 3或更高版本,以及Windows XP和Windows Server 2003。482-1-2 Visual FoxPro 9.0的安裝過程 下面在Windows XP操作系統(tǒng)下安裝Visual FoxPro 9.

13、0的步驟如下:(1)關(guān)閉所有打開的應(yīng)用程序。如果計(jì)算機(jī)上運(yùn)行了防病毒程序,在運(yùn)行安裝向?qū)е皩⑺P(guān)閉。防病毒程序運(yùn)行時,安裝向?qū)Р荒苷_\(yùn)行。(2)將Visual FoxPro 9.0的安裝盤插入CD-ROM中,安裝程序即可自動運(yùn)行。 492-1-2 Visual FoxPro 9.0的安裝過程(3)在運(yùn)行彈出的安裝界面下單擊“Prerequisites”選項(xiàng),自動搜索安裝組件 。(4)然后在彈出的組件圖中單擊“Install Now! ”選項(xiàng),安裝程序開始更新組件。(5)組件更新結(jié)束后,單擊“Done”,返回安裝初始界面。(6)單擊“Visual FoxPro”,選中“I accept th

14、e agreement”選項(xiàng)并輸入終端用戶許可產(chǎn)品序列號和用戶名后,單擊“Continue”選項(xiàng)。50(7)然后選擇需要安裝的內(nèi)容和安裝的目錄,單擊“Install Now! ”選項(xiàng)開始安裝。 (8)安裝過程完畢后,在彈出的界面上單擊“Done”選項(xiàng)返回初始界面,然后單擊“Exit”結(jié)束安裝。2-1-2 Visual FoxPro 9.0的安裝過程512-2 Visual FoxPro 9.0的啟動和退出 2-2-1 Visual FoxPro 9.0 的啟動2-2-2 Visual FoxPro 9.0 的退出522-2-1 Visual FoxPro 9.0的啟動下面是啟動Visual F

15、oxPro9.0常用的3種方法:1從“開始”菜單啟動Visual FoxPro 9.0 (1)單擊屏幕左下角的“開始”按鈕,移動鼠標(biāo)指針指向“程序”選項(xiàng)。(2)再把指針指向Microsoft Visual FoxPro 9.0,然后單擊該選項(xiàng)即可啟動Visual FoxPro 9.0。532-2-1 Visual FoxPro 9.0的啟動2用快捷方式啟動Visual FoxPro 9.0 先在桌面上建立啟動快捷鍵,然后用鼠標(biāo)雙擊快捷鍵即可啟動Visual FoxPro 9.0 。3從“運(yùn)行”對話框中啟動Visual FoxPro 9.0(1)單擊任務(wù)欄上的“開始”“運(yùn)行”菜單命令,打開“運(yùn)行

16、”對話框。(2)在該對話框中輸入VFP9.exe所在的路徑,然后單擊“確定”按鈕,即可啟動Visual FoxPro 9.0。54退出Visual FoxPro 9.0有以下幾種方法:(1)直接單擊主窗口右上角的“關(guān)閉”按鈕。(2)在“命令”窗口中,輸入“quit”。(3)直接按【ALT+F4】。(4)在“文件”菜單中,選擇“退出”命令。(5)雙擊主窗口左上角標(biāo)題欄中的“控制”菜單圖標(biāo)。(6)在主窗口“控制”菜單中,選擇“關(guān)閉”。 2-2-2 Visual FoxPro 9.0 的退出552-3-1 Visual FoxPro系統(tǒng)環(huán)境窗口的組成 2-3-2 Visual FoxPro的菜單系統(tǒng)

17、 2-3-3 工作區(qū)窗口和命令窗口 2-3-4 Visual FoxPro的工作方式和命令格式 2-3 Visual FoxPro系統(tǒng)環(huán)境窗口562-3-1 Visual FoxPro系統(tǒng)環(huán)境窗口的組成 啟動Visual FoxPro 9.0后,系統(tǒng)環(huán)境窗口如下圖。標(biāo)題欄菜單欄工具欄工作區(qū)窗口命令窗口狀態(tài)欄57 從上圖可以看出,Visual FoxPro 9.0系統(tǒng)環(huán)境窗口由以下幾部分組成。(1)標(biāo)題欄 (2)菜單欄 (3)工具欄 (4)狀態(tài)欄 (5)工作區(qū)窗口 (6)命令窗口 2-3-1 Visual FoxPro系統(tǒng)環(huán)境窗口的組成58 Visual FoxPro 為用戶提供了一個可以直接操

18、作的菜單系統(tǒng),利用這個菜單系統(tǒng)可以方便地建立和操縱數(shù)據(jù)庫,而不需要了解數(shù)據(jù)庫操縱命令和函數(shù)的含義。 Visual FoxPro 各個系統(tǒng)主菜單及相關(guān)功能如下:1文件菜單 “文件”菜單主要用來進(jìn)行文件方面的操作,該菜單包括新建、打開、關(guān)閉和保存等菜單項(xiàng)。 2-3-2 Visual FoxPro的菜單系統(tǒng)592編輯菜單 “編輯”菜單包括撤消、重做和剪切等菜單項(xiàng) 。3顯示菜單 當(dāng)啟動Visual FoxPro 系統(tǒng),未打開任何設(shè)計(jì)器時,主菜單的“顯示”菜單中只包含“工具欄”菜單項(xiàng) ?!肮ぞ邫凇睂υ捒蛴脕矶xVisual FoxPro中打開的工具欄 。2-3-2 Visual FoxPro的菜單系統(tǒng)6

19、04格式菜單 啟動Visual FoxPro 系統(tǒng)后,在系統(tǒng)主菜單中并沒有“格式”菜單,只有在表單設(shè)計(jì)器環(huán)境和編寫代碼環(huán)境中,“格式”菜單才出現(xiàn)在主菜單中,但是對于不同的設(shè)計(jì)環(huán)境,“格式”菜單包含不同的菜單項(xiàng)。 在編寫代碼環(huán)境中,“格式”菜單主要是對命令行的字體、格式和大小寫等進(jìn)行設(shè)置。 2-3-2 Visual FoxPro的菜單系統(tǒng)615工具菜單 “工具”菜單中包含的菜單項(xiàng)為Visual FoxPro 系統(tǒng)中所要使用的各種常用工具。6程序菜單 “程序”菜單是用來控制程序執(zhí)行情況的菜單,該菜單由“運(yùn)行”、“取消”、“恢復(fù)”、“掛起”、“編譯”和“壓縮編譯器”等菜單項(xiàng)組成。2-3-2 Visu

20、al FoxPro的菜單系統(tǒng)627窗口菜單 “窗口”菜單用來管理窗口,主要實(shí)現(xiàn)兩方面的功能,第一是窗口管理,第二是選擇窗口。8幫助菜單 “幫助”菜單中包括各種為用戶提供幫助信息的命令。 2-3-2 Visual FoxPro的菜單系統(tǒng)631工作區(qū)窗口 在工具欄與狀態(tài)欄之間的一大塊空白區(qū)域就是系統(tǒng)工作區(qū)窗口,各種工作窗口都是在這里打開的,用來顯示數(shù)據(jù)表、命令或程序的運(yùn)行結(jié)果。2命令窗口 命令窗口位于菜單欄和狀態(tài)欄之間,是Visual FoxPro 系統(tǒng)命令執(zhí)行、編輯的窗口。在命令窗口中,可以輸入命令實(shí)現(xiàn)對數(shù)據(jù)庫的操作管理,也可以用各種編輯工具對操作命令進(jìn)行修改、插入、刪除、剪切、復(fù)制、粘貼等操作

21、,還可以在此窗口建立命令文件并運(yùn)行命令文件。 2-3-3 工作區(qū)窗口和命令窗口64 在命令窗口中,可以直接輸入Visual FoxPro 命令,以立即執(zhí)行。如,輸入命令“SET CLOCK ON”,按【Enter】鍵后,將在屏幕的右上角出現(xiàn)一個時間條;“SET STATUS BAR OFF”命令可以取消屏幕底部的狀態(tài)欄;“DIR”命令在屏幕上顯示當(dāng)前目錄下表的信息;“CLEAR”命令則清除屏幕;“QUIT”命令直接退出Visual FoxPro 。 此外,也可以使用與命令對應(yīng)的菜單或按鈕進(jìn)行操作,每當(dāng)操作完成,系統(tǒng)將自動把與操作相對應(yīng)的命令在命令窗口內(nèi)顯示。 2-3-3 工作區(qū)窗口和命令窗口6

22、51Visual FoxPro 的工作方式 Visual FoxPro 支持兩種不同的工作方式,即交互操作方式與程序執(zhí)行方式。兩種工作方式用于不同的環(huán)境,適合不同層次的用戶和不同的要求。 (1)交互操作方式 交互操作方式即命令執(zhí)行方式或界面操作方式,需要記住命令的格式與功能。在Visual FoxPro 系統(tǒng)的“命令”窗口中輸入一條命令,然后按【Enter】鍵,即可立即從主窗口中看到程序執(zhí)行的結(jié)果。 2-3-4 Visual FoxPro的工作方式和命令格式662-3-4 Visual FoxPro的工作方式和命令格式(2)程序執(zhí)行方式 程序執(zhí)行方式即將一系列命令存儲到一個程序文件(又稱命令文

23、件)里的方法,當(dāng)需要執(zhí)行這一系命令時只需通過特定的命令來調(diào)用這個程序文件,系統(tǒng)就能自動逐條執(zhí)行程序文件中的每條命令。 程序執(zhí)行方式不僅運(yùn)行效率高,而且可重復(fù)執(zhí)行。這些程序文件可以實(shí)現(xiàn)代碼重復(fù)利用,使用程序的人可以不知道程序內(nèi)部結(jié)構(gòu)和其中的命令,而只需了解程序的允許步驟和運(yùn)行過程中的人機(jī)交互要求即可使用此程序文件。 672-3-4 Visual FoxPro的工作方式和命令格式2Visual FoxPro 的命令格式 Visual FoxPro大多數(shù)命令都具有多種子句,每種子句表達(dá)某種功能,所以命令的可選功能越多,其格式越長。 Visual FoxPro 9.0命令的一般格式如下: FOR/ W

24、HILE 各部分的意義如下:(1)命令動詞:每條命令必須以命令動詞開頭,命令動詞指明了一種具體的操作。 682-3-4 Visual FoxPro的工作方式和命令格式(2)表達(dá)式表:用來指示計(jì)算機(jī)執(zhí)行該命令所操作的結(jié)果參數(shù)。 (3)范圍:表示對表進(jìn)行操作的記錄范圍的限制,一般有以下4種選擇。 ALL:當(dāng)前表中的全部記錄。 NEXT :從當(dāng)前記錄開始的連續(xù)n條記錄。 RECORD :當(dāng)前表中的第n號記錄。REST:從當(dāng)前記錄開始到最后一條記錄為止的所有記錄。692-3-4 Visual FoxPro的工作方式和命令格式(4)FOR:規(guī)定對范圍內(nèi)滿足條件的記錄進(jìn)行操作。 WHILE:從當(dāng)前記錄開始

25、,對范圍內(nèi)滿足條件的記錄進(jìn)行操作,一旦遇到不滿足條件的記錄,就停止搜索并結(jié)束該命令的執(zhí)行。 命令中符號的解釋如下 :(1) :其中的內(nèi)容是可選項(xiàng),不選時系統(tǒng)自動取默認(rèn)值。 (2):其中的內(nèi)容是用戶的必選項(xiàng),通常有多種可能供用戶選擇一種。 (3)/ :為二選一表示符.702-4 Visual FoxPro的輔助設(shè)計(jì)工具2-4-1 Visual FoxPro的向?qū)?2-4-2 Visual FoxPro的設(shè)計(jì)器 2-4-3 Visual FoxPro的生成器 712-4-1 Visual FoxPro的向?qū)?Visual FoxPro 是一個快速應(yīng)用系統(tǒng)開發(fā)的工具,它提供了非常豐富的交互式向?qū)?,?/p>

26、以幫助用戶快速制作出各種應(yīng)用程序?qū)ο?,例如?shù)據(jù)表格、表單、報表、標(biāo)簽和查詢等。一旦啟動向?qū)е?,只要按提示回答一連串的問題,向?qū)Ь蜁凑赵O(shè)定創(chuàng)建應(yīng)用程序?qū)ο?。如果向?qū)谱鞯膶ο蟛荒芡耆闲枨螅€可以用設(shè)計(jì)器編輯修改。在使用向?qū)У倪^程中,可隨時按【F1】鍵,取得此向?qū)У穆?lián)機(jī)幫助信息。 常用的向?qū)гO(shè)計(jì)器有:表向?qū)?、報表向?qū)?、表單向?qū)?、查詢向?qū)У取?722-4-2 Visual FoxPro的設(shè)計(jì)器 在Visual FoxPro 中,系統(tǒng)提供了各種各樣的可視化設(shè)計(jì)器,這些設(shè)計(jì)器以交互操作的方式來進(jìn)行應(yīng)用程序界面的設(shè)計(jì),而不必編寫大量代碼來實(shí)現(xiàn)該項(xiàng)功能。所有的設(shè)計(jì)器都支持鼠標(biāo)右鍵的彈出式菜單,只要

27、在設(shè)計(jì)器或是內(nèi)含的控件上單擊鼠標(biāo)右鍵,便會彈出包含了針對該對象各種處理操作選項(xiàng)的快捷菜單。 常用的設(shè)計(jì)器有:表設(shè)計(jì)器、查詢設(shè)計(jì)器、視圖設(shè)計(jì)器、表單設(shè)計(jì)器、報表設(shè)計(jì)器、數(shù)據(jù)庫設(shè)計(jì)器、菜單設(shè)計(jì)器等。 732-4-3 Visual FoxPro的生成器 Visual FoxPro 系統(tǒng)提供的生成器,可以簡化創(chuàng)建和修改用戶界面程序的設(shè)計(jì)過程,提高軟件開發(fā)的質(zhì)量。每個生成器都由一系列選項(xiàng)卡組成,允許用戶訪問并設(shè)置所選對象的屬性。系統(tǒng)可以將生成器生成的用戶界面直接轉(zhuǎn)換成程序代碼。 常用的生成器有:組合框生成器、命令按鈕組生成器、表達(dá)式生成器、列表框生成器等。 742-5 項(xiàng)目管理器2-5-1 創(chuàng)建項(xiàng)目 2

28、-5-2 項(xiàng)目管理器的使用 2-5-3 定制項(xiàng)目管理器 752-5-1 創(chuàng)建項(xiàng)目 項(xiàng)目管理器是Visual FoxPro用來管理、組織數(shù)據(jù)和對象的主要工具,可以管理40余種不同格式的文件。它將一些相關(guān)的文件、數(shù)據(jù)、文檔等集合起來,用圖形與分類的方式來管理,針對不同類型的文件提供不同的操作。在Visual FoxPro中,可以根據(jù)需要創(chuàng)建項(xiàng)目。 通常使用兩種方法創(chuàng)建一個新的項(xiàng)目文件,一種是菜單方式,另一種是命令方式。 762-5-1 創(chuàng)建項(xiàng)目 1菜單方式(1)單擊“文件”“新建”命令或者單擊工具欄上的“常用”“新建”按鈕,系統(tǒng)打開“新建”對話框,如下圖。772-5-1 創(chuàng)建項(xiàng)目 (2)在“文件類

29、型”區(qū)域選擇“項(xiàng)目”單選項(xiàng),然后單擊“新建”按鈕,系統(tǒng)打開“創(chuàng)建”對話框。(3)在“創(chuàng)建”對話框的“項(xiàng)目文件”文本框中輸入項(xiàng)目名稱,在“保存在”組合框中選擇保存該項(xiàng)目的文件夾。(4)單擊“保存”按鈕,系統(tǒng)即創(chuàng)建該項(xiàng)目。如下圖所示為用戶創(chuàng)建的名為“項(xiàng)目1”的新項(xiàng)目。 782-5-1 創(chuàng)建項(xiàng)目 792-5-1 創(chuàng)建項(xiàng)目 2命令方式。 在命令窗口中輸入CREATE PROJECT 命令,可以隨時創(chuàng)建新的項(xiàng)目。 命令格式:CREATE PROJECT File Name/ ? 命令功能:該命令用于創(chuàng)建一個新的項(xiàng)目。 命令說明: File Name參數(shù)用于指定要創(chuàng)建的項(xiàng)目文件名稱。 如果在命令中使用?參

30、數(shù),那么當(dāng)執(zhí)行該命令時,系統(tǒng)將打開“創(chuàng)建”對話框,要求用戶輸入項(xiàng)目文件名稱以及選擇保存該項(xiàng)目的文件夾。802-5-2 項(xiàng)目管理器的使用 在項(xiàng)目管理器中,各個項(xiàng)目都是以圖形方式來組織和管理的,用戶可以擴(kuò)展或壓縮某一類型文件的圖標(biāo)。1打開/關(guān)閉項(xiàng)目管理器(1)打開項(xiàng)目管理器 選擇“文件”“打開”命令。 在彈出的“打開”對話框中選定需要打開的項(xiàng)目文件。 單擊“確定”按鈕。(2)關(guān)閉項(xiàng)目管理器單擊項(xiàng)目管理器右上角的“關(guān)閉”按鈕即可。812-5-2 項(xiàng)目管理器的使用 2查看文件(1)展開項(xiàng)目 如果項(xiàng)目中具有一個以上同一類型的項(xiàng),其類型符號旁邊會出現(xiàn)一個“+”號。單擊“+”號可以顯示項(xiàng)目中該類型的所有明細(xì)

31、,此時“+”變?yōu)椤?”。 (2)折疊項(xiàng)目 若要折疊已展開的列表,可單擊列表旁邊的“-”號,此時“-”變?yōu)椤?”。 822-5-2 項(xiàng)目管理器的使用 3在項(xiàng)目管理器中添加或移去文件 (1)添加文件 在“項(xiàng)目管理器”中,從相應(yīng)選項(xiàng)卡中選擇需要添加的文件類型,然后單擊“添加”按鈕。 在“打開”對話框中選定需要添加的文件,然后單擊“確定”按鈕。(2)移去文件 在“項(xiàng)目管理器”中,從相應(yīng)選項(xiàng)卡中選擇需要移去的文件,然后單擊“移去”按鈕。 在出現(xiàn)的詢問對話框中單擊“移去”命令,從該項(xiàng)目中移去此文件。如果選擇“刪除”,則從當(dāng)前項(xiàng)目中移去該文件的同時將其從磁盤上刪除。單擊“確定”按鈕即可。832-5-2 項(xiàng)目

32、管理器的使用 4在項(xiàng)目管理器中新建或修改文件 項(xiàng)目管理器簡化了創(chuàng)建和修改文件的過程。只需要選定要創(chuàng)建或修改的文件類型,然后選擇“新建”或“修改”按鈕,將顯示與所選文件類型相應(yīng)的設(shè)計(jì)工具。對于某些項(xiàng),還可以選擇利用向?qū)韯?chuàng)建文件。5為文件添加說明 在項(xiàng)目管理器中,可以為文件加上說明。具有文件說明的文件被選定時,說明將顯示在項(xiàng)目管理器的底部。6查看和編輯項(xiàng)目信息 從“項(xiàng)目”菜單中選擇“項(xiàng)目信息”菜單項(xiàng),打開“項(xiàng)目信息”對話框,在其中可以查看和編輯有關(guān)項(xiàng)目和項(xiàng)目中文件的信息。 842-5-3 定制項(xiàng)目管理器 “項(xiàng)目管理器”是作為一個獨(dú)立的窗口存在的。根據(jù)用戶的不同需要,可以移動它的位置,改變它的大小

33、與外觀,也可以將它打開或折疊起來。1改變項(xiàng)目管理器窗口的大小和位置 若要改變項(xiàng)目管理器窗口的大小,只要將鼠標(biāo)放置在窗口的邊框上并拖曳鼠標(biāo)即可。 若要移動項(xiàng)目管理器窗口的顯示位置,應(yīng)將鼠標(biāo)放置在窗口的標(biāo)題欄上并拖曳鼠標(biāo)即可。 852-5-3 定制項(xiàng)目管理器 2折疊項(xiàng)目管理器窗口 若要折疊項(xiàng)目管理器窗口,應(yīng)單擊項(xiàng)目管理器窗口中的“折疊”按鈕,如下圖所示。折疊按鈕862-5-3 定制項(xiàng)目管理器 在折疊情況下,項(xiàng)目管理器窗口只顯示其中的選項(xiàng)卡,并且“折疊”按鈕變更為“還原”按鈕,如下圖所示。若要還原項(xiàng)目管理器窗口,應(yīng)單擊項(xiàng)目管理器窗口中的“還原”按鈕。還原按鈕872-5-3 定制項(xiàng)目管理器 3拆分項(xiàng)目

34、管理器 折疊項(xiàng)目管理器窗口以后,可以進(jìn)一步拆分項(xiàng)目管理器窗口,使其中的選項(xiàng)卡成為獨(dú)立、浮動的窗口,并根據(jù)需要重新安排它們的位置。拆分項(xiàng)目管理器窗口的操作如下:(1)首先折疊項(xiàng)目管理器窗口。(2)選擇要拆分的選項(xiàng)卡并拖曳鼠標(biāo)。(3)拖曳選擇的選項(xiàng)卡到達(dá)目的地后釋放鼠標(biāo),系統(tǒng)即完成了拆分工作,如下圖所示。882-5-3 定制項(xiàng)目管理器 若要還原拆分的選項(xiàng)卡,可以單擊選項(xiàng)卡上的“關(guān)閉”按鈕,也可以利用鼠標(biāo)將拆分的選項(xiàng)卡拖回項(xiàng)目管理器窗口中。 892-5-3 定制項(xiàng)目管理器 4設(shè)置選項(xiàng)卡的頂層顯示 對于項(xiàng)目管理器窗口中拆分了的選項(xiàng)卡,可以將其設(shè)置為始終顯示在屏幕的最頂層,這樣選項(xiàng)卡就會永遠(yuǎn)浮在其他窗口

35、的上方,不會被其他窗口遮擋。 若要設(shè)置選項(xiàng)卡的頂層顯示,應(yīng)單擊選項(xiàng)卡上的圖釘圖標(biāo),如下圖所示。這樣,該選項(xiàng)卡就會一直浮在其他窗口的上方,不會被其他窗口遮擋。若要取消選項(xiàng)卡的頂層顯示,可以再次單擊選項(xiàng)卡的圖釘圖標(biāo)。 902-5-3 定制項(xiàng)目管理器 圖釘圖標(biāo)第3章Visual FoxPro數(shù)據(jù)基礎(chǔ)OUTLINE3.1 數(shù)據(jù)類型3.2 運(yùn)算符與表達(dá)式3.3 常用函數(shù) 本章小結(jié)3.1數(shù)據(jù)類型 3.1.1數(shù)據(jù)類型3.1.2 數(shù)據(jù)存儲1 常量 2 變量(內(nèi)存變量、字段變量)3 數(shù)組(Array)4 記錄(Record)5 對象 (Object)3.1.1 數(shù)據(jù)類型VFP 包含下列數(shù)據(jù)類型有:1字符型(Ch

36、aracter) 字符型數(shù)據(jù)是不具計(jì)算能力的文字?jǐn)?shù)據(jù)類型,用字母C表示。字符型數(shù)據(jù)包括中文字符、英文字符、數(shù)字字符和其他ASCII字符,其長度(即字符個數(shù))范圍是0254個字符。 注:字符型常量必須用“”括起來, 一個漢字或中文標(biāo)點(diǎn)占2個字符。 2貨幣型(Currency) 貨幣型數(shù)據(jù)是為存儲貨幣的數(shù)據(jù)類型,系統(tǒng)保留4位小數(shù),寬度為8。貨幣型數(shù)據(jù)用字母Y表示。 注:貨幣值必須加$ eg: prise=$25.803數(shù)值型(Numeric) 數(shù)值型數(shù)據(jù)由數(shù)字、小數(shù)點(diǎn)、正負(fù)號和字母E組成,用字母N表示。注:總長=整數(shù)位+小數(shù)點(diǎn)+小數(shù)位,且長度應(yīng)小于20B4雙精度型(Double) 雙精度型數(shù)據(jù)是具

37、有更高精度的一種數(shù)值型數(shù)據(jù),如用于存儲科學(xué)實(shí)驗(yàn)數(shù)據(jù),用字母B表示。它采用固定長度浮點(diǎn)格式存儲。注1:雙精度類型只用于表中字段類型的定義,寬度為8。注2:不同于數(shù)值型,小數(shù)點(diǎn)位置由輸入值決定5浮點(diǎn)型(Float) 浮點(diǎn)型與數(shù)值型數(shù)據(jù)完全等價,用字母F表示只是在存儲形式上采用浮點(diǎn)格式,主要是為了得到較高的計(jì)算精度。注:浮點(diǎn)型數(shù)據(jù)只用于表中字段類型的定義6整型(Integer) 整型數(shù)據(jù)是不包含小數(shù)部分的數(shù)值型數(shù)據(jù),用字母I表示。整型數(shù)據(jù)只用來表示整數(shù)。注:整型數(shù)據(jù)只用于表中字段類型的定義,寬度為47日期型(Date) 日期型數(shù)據(jù)是表示日期的數(shù)據(jù),用字母D表示,寬度為8。有傳統(tǒng)的和嚴(yán)格的兩種格式。

38、傳統(tǒng)的日期格式:系統(tǒng)默認(rèn)格式是mm/dd/yyyy 嚴(yán)格的日期格式:yyyy-mm-dd,在任何情況下都可使用。8日期時間型(Time) 日期時間型數(shù)據(jù)是表示日期和時間的數(shù)據(jù),用字母T表示,寬度為8。也有傳統(tǒng)的和嚴(yán)格的兩種格式。 日期時間的默認(rèn)格式是mm/dd/yyyy hh:mm:ss,而2007-4-1 10:00:00am表示2007年4月1日10時整。其中am表示上午,pm表示下午。 9邏輯型(Logical) 邏輯型數(shù)據(jù)是描述客觀事物真假的數(shù)據(jù)類型,表示邏輯判斷的結(jié)果,用字母L表示,寬度為1。注:邏輯型數(shù)據(jù)只有真(.t./.y.)和假(.f./.n.)兩種。10備注型(Memo) 備

39、注型是表示、存放較多字符的不定長數(shù)據(jù)的類型,諸如“工作簡歷”等數(shù)據(jù)。備注型只能用于表中字段的定義可以把它看成是字符型數(shù)據(jù)的特殊形式,用字母M表示。注1:備注型只用于表中字段類型的定義,寬度為4,顯示為MEMO。注2:,當(dāng)前表用4個字節(jié)只放對其內(nèi)容的引用,實(shí)際數(shù)據(jù)存放在與表文件同名的備注文件(.FPT)中。11通用型(Gen) 通用型數(shù)據(jù)是存儲OLE(對象鏈接嵌入)對象的數(shù)據(jù)類型,用字母G表示。通用型數(shù)據(jù)中的OLE對象可以是聲音、圖片、電子表格、文檔等。注1:它只用于表中字段類型的定義。寬度為4,顯示為“gen”。 注2:通用型字段中包含的是對該OLE對象的引用,實(shí)際數(shù)據(jù)存放在與表文件同名的備注

40、文件(.FPT)中。小結(jié)1、其中: 字符型、數(shù)值型、日期型、日期時間型、邏輯型、貨幣型即可以用于表中字段,也可以用于一般的內(nèi)存變量或數(shù)組變量;整型、浮點(diǎn)型、雙精度型、備注型、通用型則只可以用于表中字段。2、其中整型、貨幣型、雙精度型、邏輯型、日期型、日期時間型、備注型、通用型的字段寬度是由系統(tǒng)規(guī)定,用戶無法指定。3、其中數(shù)值型、雙精度型、浮動型在定義時須指定小數(shù)位。 3.1.2 數(shù)據(jù)存儲1常量 在整個操作過程中其值保持不變的量稱為常量,VFP有數(shù)值型、字符型、貨幣型、邏輯型、日期型、日期時間型6種類型。(1)字符型:用定界符(單引號、雙引號)括起來的字符串。 如:abc,123, ,中國。(2

41、)數(shù)值型:由數(shù)字、小數(shù)點(diǎn)和正負(fù)號組成的一個常數(shù)。 如:456、-11.6、3.15E+10。(3)貨幣型:用來表示貨幣值,其格式是在數(shù)值型常量前加一個“$”符號。 如:$12.34。(4)邏輯型: 只有真和假兩種值,分別用(.t.或.y.)和(.f.或.n.)表示真和假。要注意字母左右的圓點(diǎn)符“.”。 (5)日期型:表示一個確切的日期,用花括號作為定界符。 系統(tǒng)默認(rèn)的是嚴(yán)格的日期格式:YYYY-MM-DD,使用有關(guān)命令設(shè)置后,可使用傳統(tǒng)的日期格式。如2007-1-8(6)日期時間型:表示一個確切的時間,用花括號作為定界符。 系統(tǒng)默認(rèn)的是嚴(yán)格的日期格式: YYYY-MM-DD hh:mm:ss

42、am/pm。如2007-1-8 10:30 am2變量(內(nèi)存變量、字段變量) 變量是在操作過程中其值可以改變的數(shù)據(jù)。(1)字段變量 字段變量是定義在表中的變量,隨表的存取而存取,因而是永久性變量。字段名就是變量名,其數(shù)據(jù)類型可以為任意數(shù)據(jù)類型,字段值就是變量值。該變量在不同的記錄取不同的值。(2)內(nèi)存變量 內(nèi)存中存儲數(shù)據(jù)的位置名稱,其值和類型可以不斷改變。內(nèi)存變量名 內(nèi)存變量使用字母、漢字、下劃線和數(shù)字命名, 但不能以數(shù)字開頭,最多可達(dá)128個字符。內(nèi)存變量的類型 類型也隨著其值的變化而變化 內(nèi)存變量的作用域 內(nèi)存變量的作用域有LOCAL、PRIVATE和PUBLIC三種 內(nèi)存變量的賦值 【命

43、令格式I】 STORE 表達(dá)式 TO內(nèi)存變量名表 【命令格式II】內(nèi)存變量名=表達(dá)式內(nèi)存變量或表達(dá)式值的顯示 【命令格式】 ?/? 表達(dá)式表3. 數(shù)組(Array) 數(shù)組是一組具有相同名稱、以下標(biāo)相互區(qū)分的有序內(nèi)存變量。(1)數(shù)組元素 數(shù)組中各有序變量(數(shù)據(jù)元素)組成數(shù)組的成員,稱為數(shù)組元素。注1:Visual Foxpro中同一個數(shù)組中各元素從下標(biāo)1開始編號 注2:Visual Foxpro中數(shù)組元素的數(shù)據(jù)類型可以不同。 注3:數(shù)組創(chuàng)建后,系統(tǒng)自動給每個元素賦以邏輯值.F.。(2)數(shù)組的定義 數(shù)組必須先定義后使用.【命令格式】DIMENSION | DECLARE 數(shù)組名(數(shù)值表達(dá)式,數(shù)值表

44、達(dá)式2) ,如:DECLAER A (3) &定義了數(shù)組名為A的一維數(shù)組,其下標(biāo)的上界為3。 (3)數(shù)組的賦值與引用 Visual Foxpro允許同一數(shù)組的不同元素可取不同數(shù)據(jù)類型,而且同一元素的前、后類型也允許改變。 數(shù)組的賦值與內(nèi)存變量的賦值基本相同.(4)利用數(shù)組的常見操作表與數(shù)組間的數(shù)據(jù)傳遞 將當(dāng)前記錄復(fù)制到數(shù)組 SCATTER TO 數(shù)組名 將數(shù)組復(fù)制到當(dāng)前記錄 GATHER FROM 數(shù)組名 4記錄(Record) 當(dāng)數(shù)據(jù)在二維表上存儲時,二維表中的行可理解為記錄(Records),記錄是字段的集合,也是構(gòu)成表的基本單位。一條記錄最多可以有255個字段,同一個數(shù)據(jù)表中的記錄具有相

45、同的結(jié)構(gòu),即具有相同的字段名、字段類型、字段寬度等。一個二維表中的記錄數(shù)最多可達(dá)到10億條。5對象(Object) 對象是數(shù)據(jù)存儲器的一種。對象是類的實(shí)體,是任何具有屬性和方法的信息的集合。VFP的對象可以是窗口、表單、控件、用戶自定義對象等。用戶可以通過對象的事件、屬性和方法來處理對象。合理的運(yùn)用對象,通過代碼的重用、對象的繼承,能夠加快系統(tǒng)開發(fā)的進(jìn)程。3.2 運(yùn)算符與表達(dá)式 3.2.1 運(yùn)算符3.2.2 表達(dá)式3.2.1 運(yùn)算符1. 算術(shù)運(yùn)算符 算術(shù)操作符的操作對象必須是數(shù)值,操作的結(jié)果也是數(shù)值。 操作順序是先乘方、再乘除與取余、后加減。同一級別的操作順序?yàn)閺淖笙蛴?。?-1 算術(shù)運(yùn)算符運(yùn)

46、算符功能描述舉例結(jié)果()括號(3+4)*642、正負(fù)號 -(4+6) -10*或乘方238*、/、%乘、除、取模(求余)32%5 2、加、減2+6-8+332字符運(yùn)算符 字符運(yùn)算符的操作對象必須是字符型數(shù)據(jù),用于字符串的連接及測試測試包含操作。 表3-2 字符運(yùn)算符運(yùn)算符功能描述舉例結(jié)果(類型)+連接兩個字符型數(shù)據(jù)“Visual ”+“Foxpro 9.0” “Visual Foxpro 9.0” C型刪除尾部空格后連接兩個字符型數(shù)據(jù)“Visual ”-“Foxpro 9.0” “VisualFoxpro 9.0” C型$測試前串是否是后串的子串“pro” $ “Foxpro 9.0” .T.

47、 L型3關(guān)系運(yùn)算符 關(guān)系操作符的操作對象的數(shù)據(jù)類型必須一致,結(jié)果是邏輯值。數(shù)值型數(shù)據(jù)按數(shù)值大小比較;日期型數(shù)據(jù)按時間順序比較;字符型數(shù)據(jù)按相應(yīng)位置的ASCII碼的大小比較。 表3-3 關(guān)系運(yùn)算符關(guān)系運(yùn)算符功能描述舉例結(jié)果小于20大于2016.T.=等于“ASD”=“asd”.F.=小于等于20=大于等于20=16.T.6).T.AND.邏輯與(且的關(guān)系,兩者均為.T.結(jié)果才為.T.)(46) .AND. (66) .OR. (61.and.(“ABC”$“AB”.or.1020/5+6)是一個邏輯表達(dá)式,結(jié)果為.F.。 3.3 常用函數(shù) 函數(shù)是可以看做是用來完成特定功能的程序。在Visual

48、FoxPro系統(tǒng)中提供了一批標(biāo)準(zhǔn)函數(shù),可以使用戶以簡便的方式完成某些特定的操作。函數(shù)由函數(shù)名、參數(shù)和函數(shù)值構(gòu)成。其中,函數(shù)名起標(biāo)識作用;參數(shù)是自變量,用于在程序之間傳遞信息,一般以表達(dá)式的方式存在于函數(shù)的括號內(nèi);函數(shù)值是函數(shù)運(yùn)算結(jié)束后的返回值。3.3 常用函數(shù)3.3.1 數(shù)值運(yùn)算函數(shù) 3.3.2 字符處理函數(shù) 3.3.3 轉(zhuǎn)換函數(shù) 3.3.4 日期函數(shù) 3.3.5 測試函數(shù) 3.3.6 其他函數(shù)數(shù)值運(yùn)算函數(shù) 1取絕對值函數(shù)【格式】ABS(N)【功能】返回N的絕對值。如:?ABS(-8),ABS(5) 8 52取整函數(shù)【格式】INT(N)【功能】返回N的整數(shù)部分。如:?int(4.99) 4?i

49、nt(-4.99) -43平方根函數(shù)【格式】SQRT(N)【功能】返回N的平方根(N=0)。如:?sqrt(4) 2.00數(shù)值運(yùn)算函數(shù)4最大值函數(shù)MAX( )和最小值函數(shù)MIN( )【格式】MAX(N1,N2,N3)/ MIN(N1,N2,N3)注:自變量表達(dá)式的類型可以是數(shù)值型、字符型、貨幣型、雙精度型、浮點(diǎn)型、日期型。其中數(shù)值型比較的是其本身的大小,字符型比較的是其ASCII順序或字典順序,日期型比較的是其發(fā)生的先后。如:?max(-5,6,90,45,123,65), min(-5,6,90,45,123,65) 123 -5 5求余數(shù)函數(shù)【格式】MOD(N1,N2)【功能】返回N1除以

50、N2的余數(shù)。余數(shù)的小數(shù)位數(shù)與N1相同,符號與N2相同。如:a1=5?mod(a1, 2),mod(a1,3)26四舍五入函數(shù)【格式】ROUND(N1,N2)【功能】返回N1四舍五入的值,并保留N2位小數(shù)。如:X=123.456? ROUND(X,2) , ROUND(X,1),ROUND(X,0),ROUND(X,-1)123.46 123.5 123 120 字符處理函數(shù) 1取左子串函數(shù)【格式】LEFT(C,N)【功能】返回C中從第一個字符開始到第N個字符為止的子串,即返回C的由N個字符組成的左子串。如:StudentId=”200501020001” ?Left(StudentId,4)

51、20052取右子串函數(shù)【格式】RIGHT(C,N)【功能】返回C的由N個字符組成的右子串。如:StudentId=”200501020001” ? Right (StudentId,5) 200013取子串函數(shù)【格式】SUBSTR(C,N1 ,N2)【功能】返回C中從第N1個字符開始,由N2個字符組成的子串。若省略N2,默認(rèn)為到C的末尾。如:StudentId=”200501020001” ?Substr(StudentId,5,2) 01字符處理函數(shù)4字符串長度函數(shù)【格式】LEN(C)【功能】返回C的長度(字符個數(shù))。函數(shù)值為N型。如:str1=Visual Foxpro?len(str1)

52、 &135刪除字符串前導(dǎo)空格函數(shù)【格式】LTRIM(C)【功能】刪除C的前導(dǎo)空格字符。如:str1= Foxpro ?LEN(str1),LEN(LTRIM(str1) & 9 6 6刪除字符串尾部空格函數(shù)【格式】RTRIM|TRIM(C)【功能】刪除C的尾部空格字符。如:str1=Visual ?LEN(str1),LEN(RTRIM(str1) & 10 6 7刪除前后空格函數(shù)【格式】ALLTRIM(C)【功能】刪除C的前導(dǎo)和尾部空格字符。如:str1= Visual ?LEN(str1),LEN(ALLTRIM(str1) & 14 6 轉(zhuǎn)換函數(shù) 1字符轉(zhuǎn)換為ASCII碼值函數(shù)【格式】A

53、SC(C)【功能】返回C中首字符的ASCII碼值(十進(jìn)制)。如:?ASC(A) 652ASCII碼值轉(zhuǎn)換為字符函數(shù)【格式】CHR(N)【功能】返回ASCII碼值與N對應(yīng)的ASCII字符。函數(shù)值為C型。如:?CHR(65) A轉(zhuǎn)換函數(shù)3字符串轉(zhuǎn)換為日期函數(shù)【格式】CTOD(C)【功能】把C轉(zhuǎn)換成對應(yīng)的日期。函數(shù)值為D型。如:?CTOD(“02/10/06”) 02/10/064日期轉(zhuǎn)換為字符串函數(shù)【格式】DTOC(D)【功能】把D轉(zhuǎn)換成相應(yīng)的字符串。如:?DTOC(DATE() 02/10/07轉(zhuǎn)換函數(shù)5數(shù)值轉(zhuǎn)換為字符串函數(shù)【格式】STR(N1 ,N2 ,N3 )【功能】將N1轉(zhuǎn)換成由N2個字符

54、組成的字符串,保留N3位小數(shù)。注1:省略N3,默認(rèn)為0;若同時省略N2,默認(rèn)為10位整數(shù)。注2:N2限定了字符串的寬度。寬度過大時,在前面補(bǔ)空格;不足時,則舍棄小數(shù)位;當(dāng)寬度不足以容納整數(shù)位時,作錯誤處理,顯示為星號。如:price=123.45?STR(price,8,3) &123.4506字符串轉(zhuǎn)換為數(shù)值函數(shù)【格式】VAL(C)【功能】將C中數(shù)字轉(zhuǎn)換成對應(yīng)數(shù)值(保留兩位小數(shù)),若首字符不是數(shù)字(空格除外),返回0。如:?VAL(”12345”) & 12345.00? VAL(“ABC”) &0? VAL(“12A3”) &12.00轉(zhuǎn)換函數(shù)7小寫轉(zhuǎn)換為大寫函數(shù)【格式】UPPER(C)【

55、功能】返回C的大寫形式。如:name=”Visual Foxpro”?UPPER(name) & VISUAL FOXPRO8大寫轉(zhuǎn)換為小寫函數(shù)【格式】LOWER(C)【功能】返回C的小寫形式。例如:name=”Visual Foxpro”?LOWER(name) & visual foxpro日期函數(shù) 1系統(tǒng)日期函數(shù)【格式】DATE()【功能】無自變量,返回當(dāng)前系統(tǒng)日期。函數(shù)值為D型。2系統(tǒng)時間函數(shù)【格式】TIME(N)【功能】返回當(dāng)前系統(tǒng)時間。函數(shù)值為C型。3日期函數(shù)【格式】DAY(D|T)【功能】返回D|T中月里面的天數(shù)。函數(shù)值為N型如:?DAY(DATE() &104月份函數(shù)【格式】M

56、ONTH(D|T)【功能】返回D|T中的月份。函數(shù)值為N型。如:?MONTH(DATE() &25年份函數(shù)【格式】YEAR(D|T)【功能】返回D|T中的年份。函數(shù)值為N型。如:?YEAR(DATE() & 2007 測試函數(shù) 用于測試操作對象的狀態(tài)或?qū)傩砸詻Q定下一步的處理方法。 1表文件尾測試函數(shù)【格式】EOF(工作區(qū)號|表別名)【功能】測試指定表記錄指針是否指向文件尾(文件結(jié)束標(biāo)志)。注1:此函數(shù)可用于判斷查找是否成功。注2: 若省略自變量,則測試當(dāng)前表文件。2表文件首測試函數(shù)【格式】BOF(工作區(qū)號|別名)【功能】測試指定表記錄指針是否指向文件首(文件開始標(biāo)志)。如果是,返回真(.T.)

57、,否則為假(.F.)。注: 若省略自變量,則測試當(dāng)前表文件。測試函數(shù)3測試當(dāng)前記錄號函數(shù)【格式】RECNO()【功能】返回當(dāng)前表的當(dāng)前記錄號。注:若指針指向文件首,返回首記錄號;若指向文件尾,返回值為:總記錄數(shù)+1。4測試記錄數(shù)函數(shù)【格式】RECCOUNT()【功能】返回當(dāng)前表的記錄個數(shù)。如果沒有打開表則返回0。測試函數(shù)5條件測試函數(shù)IIF( )【格式】IIF(邏輯表達(dá)式,表達(dá)式1,表達(dá)式2)【功能】邏輯表達(dá)式為真,返回表達(dá)式1,否則返回表達(dá)式2。如: 通過情況=IIF(成績=60,”pass”,”fail”) 即如果成績大于等于60,則通過情況為“pass”,否則通過情況為“fail”。 ?

58、IIF(2529,”yes”,”no”) yes注:該函數(shù)經(jīng)常用于邏輯判斷,其結(jié)構(gòu)與IFELSE結(jié)構(gòu)的功能相似。測試函數(shù)6范圍測試函數(shù)BETWEEN ( )【格式】BETWEEN(表達(dá)式,下限,上限)【功能】測試表達(dá)式是否在上、下限中如: ?BETWEEN(3,1,5) .T.7類型測試函數(shù)TYPE ( )【格式】TYPE(”表達(dá)式”)【功能】測試表達(dá)式類型如:a1=”abc” ?type(“a1”) C其他函數(shù) 1取文件函數(shù)Getfile()【格式】Getfile(擴(kuò)展名,標(biāo)題)2另存文件函數(shù)Putfile()【格式】Putfile(擴(kuò)展名,標(biāo)題)3消息框函數(shù)MESSAGEBOX()【格式】

59、messagebox(提示文本,對話框類型,對話框標(biāo)題文本)本章小結(jié) 本章主要就Visual Foxpro中常用的11種數(shù)據(jù)類型及其各自的特點(diǎn)和適用范圍;Visual Foxpro的常量、變量、數(shù)組、記錄及對象等數(shù)據(jù)存儲載體的使用方法,以及掌握Visual Foxpro各類運(yùn)算符的操作規(guī)則、表達(dá)式的構(gòu)成方式以及常用函數(shù)的功能及用法進(jìn)行了介紹。137第4章數(shù)據(jù)庫與表的操作138OUTLINE 4.1數(shù)據(jù)庫的概念4.2 表的創(chuàng)建與修改4.3表記錄的維護(hù) 4.4表字段和記錄的篩選 4.5創(chuàng)建索引4.6數(shù)據(jù)庫的基本操作本章小結(jié)1394.1數(shù)據(jù)庫的概念4.1.1表的概念4.1.2 關(guān)系型數(shù)據(jù)表的特點(diǎn)4.

60、1.3 字段的基本屬性4.1.4 數(shù)據(jù)表的相關(guān)文件1404.1.1表的概念1表(Table) 表是同一類記錄的集合,用于描述一個實(shí)體集,其擴(kuò)展名為.DBF。一般我們將隸屬于某個數(shù)據(jù)庫的表稱為數(shù)據(jù)庫表,不屬于任何數(shù)據(jù)庫的表稱為自由表。 2表結(jié)構(gòu)(Tabel Structure) 表結(jié)構(gòu)是存儲表記錄的數(shù)據(jù)存放形式以及存貯的順序,也就是指一張表的表頭結(jié)構(gòu),即字段的基本屬性。3記錄(Record) 記錄是表中的一行。 4數(shù)據(jù)庫(Database) 數(shù)據(jù)庫是一個或多個數(shù)據(jù)表的匯集??梢詫?shù)據(jù)庫理解成是一個容器,是按照關(guān)系模式組織和存儲數(shù)據(jù)而構(gòu)成的數(shù)據(jù)集合。其擴(kuò)展名為.DBC。這個容器里裝的是表(關(guān)系)、

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論