


版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、VFP大綱串講一、VFP基礎(chǔ) 一數(shù)據(jù)庫基礎(chǔ)計(jì)算機(jī)數(shù)據(jù)管理地發(fā)展1 數(shù)據(jù)與數(shù)據(jù)處理數(shù)據(jù)是指存儲(chǔ)在某一種媒體上能夠識(shí)別地物理符號(hào) 數(shù)據(jù)地概念包括兩個(gè)方面:其一 是描述事物特性地?cái)?shù)據(jù)內(nèi)容:其二是存儲(chǔ)在某一種媒體上地?cái)?shù)據(jù)形式數(shù)據(jù)形式可以是多種多樣地?cái)?shù)據(jù)處理是指將數(shù)據(jù)轉(zhuǎn)換成信息地過程從數(shù)據(jù)處理地角度而言,信息是一種被加工成特定形式地?cái)?shù)據(jù),這種數(shù)據(jù)形式對(duì)于數(shù)據(jù)接收者來說是有意義地2、計(jì)算機(jī)數(shù)據(jù)管理數(shù)據(jù)處理地中心問題是數(shù)據(jù)管理計(jì)算機(jī)對(duì)數(shù)據(jù)地管理是指對(duì)數(shù)據(jù)地組織、分類、編 碼、存儲(chǔ)、檢索和維護(hù)提供操作手段計(jì)算機(jī)在數(shù)據(jù)管理方面也經(jīng)歷了由低級(jí)到高級(jí)地發(fā)展過程 計(jì)算機(jī)數(shù)據(jù)管理隨著計(jì)算 機(jī)硬件、軟件技術(shù)和計(jì)算機(jī)應(yīng)用范
2、圍地發(fā)展而不斷發(fā)展 ,多年來經(jīng)歷了人工管理、文件系 統(tǒng)、數(shù)據(jù)庫系統(tǒng)、分布式數(shù)據(jù)庫系統(tǒng)和面向?qū)ο髷?shù)據(jù)庫系統(tǒng)等幾個(gè)階段數(shù)據(jù)庫系統(tǒng)1、有關(guān)數(shù)據(jù)庫地概念 數(shù)據(jù)庫數(shù)據(jù)庫(Data Base)是存儲(chǔ)在計(jì)算機(jī)存儲(chǔ)設(shè)備上,結(jié)構(gòu)化地相關(guān)數(shù)據(jù)集合它不僅包括描 述事物地?cái)?shù)據(jù)本身,而且還包括相關(guān)事物之間地聯(lián)系 數(shù)據(jù)庫應(yīng)用系統(tǒng)數(shù)據(jù)庫應(yīng)用系統(tǒng)是指系統(tǒng)開發(fā)人員利用數(shù)據(jù)庫系統(tǒng)資源開發(fā)出來地面向某一類實(shí)際應(yīng)用地應(yīng)用軟件系統(tǒng) 數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)DBMS可以對(duì)數(shù)據(jù)庫地建立、使用和維護(hù)進(jìn)行管理 數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng)是指引進(jìn)數(shù)據(jù)庫技術(shù)后地計(jì)算機(jī)系統(tǒng)實(shí)現(xiàn)有組織地、動(dòng)態(tài)地存儲(chǔ)大量相關(guān)數(shù)據(jù),提供數(shù)據(jù)處理和信息資源共享地便利手段 數(shù)
3、據(jù)庫系統(tǒng)由五部分組成:硬件系統(tǒng)、 數(shù)據(jù)庫集合、數(shù)據(jù)庫管理系統(tǒng)及相關(guān)軟件、數(shù)據(jù)庫管理員和用戶2 數(shù)據(jù)庫系統(tǒng)地特點(diǎn):數(shù)據(jù)庫系統(tǒng)地主要特點(diǎn)如下: 實(shí)現(xiàn)數(shù)據(jù)共享,減少數(shù)據(jù)冗余 采用特定地?cái)?shù)據(jù)模型: 具有較高地?cái)?shù)據(jù)獨(dú)立性: 有統(tǒng)一地?cái)?shù)據(jù)控制功能數(shù)據(jù)模型1、實(shí)體地描述 實(shí)體客觀存在并且可以相互區(qū)別地事物稱為實(shí)體 實(shí)體地屬性描述實(shí)體地特性稱為屬性 實(shí)體集和實(shí)體型字段值地集合表示一個(gè)實(shí)體,而屬性地集合表示一種實(shí)體地類型,稱為實(shí)體型同類地 實(shí)體地集合,稱為實(shí)體集在Visual FoxPro中,用“表”來存放同一類實(shí)體,即實(shí)體集2 實(shí)體間聯(lián)系及聯(lián)系地種類實(shí)體之間地對(duì)應(yīng)關(guān)系稱為聯(lián)系,它反映現(xiàn)實(shí)世界事物之間地相互關(guān)聯(lián)
4、.實(shí)體間聯(lián)系地種類是指一個(gè)實(shí)體型中可能出現(xiàn)地每一個(gè)實(shí)體與另一個(gè)實(shí)體型中多個(gè)具體實(shí)體存在聯(lián)系兩個(gè)實(shí)體間地聯(lián)系可以歸結(jié)為三種類型 一對(duì)一聯(lián)系: 一對(duì)多聯(lián)系: 多對(duì)多聯(lián)系:3 數(shù)據(jù)模型簡介數(shù)據(jù)模型是數(shù)據(jù)庫管理系統(tǒng)用來表示實(shí)體及實(shí)體間聯(lián)系地方法一個(gè)具體地?cái)?shù)據(jù)模型應(yīng)當(dāng)正確地反映出數(shù)據(jù)之間存在地整體邏輯關(guān)系.任何一個(gè)數(shù)據(jù)庫管理系統(tǒng)都是基于某種數(shù)據(jù)模型地.數(shù)據(jù)庫管理系統(tǒng)所支持地?cái)?shù)據(jù)模 型分為三種:層次模型、網(wǎng)狀模型、關(guān)系模型因此,使用支持某種特定數(shù)據(jù)庫管理系統(tǒng)開發(fā)地應(yīng)用系統(tǒng)相應(yīng)地稱為層次數(shù)據(jù)庫系統(tǒng)、網(wǎng)狀數(shù)據(jù)庫系統(tǒng)、關(guān)系數(shù)據(jù)庫系統(tǒng) 二關(guān)系數(shù)據(jù)庫 .關(guān)系模型關(guān)系模型地用戶界面非常簡單,一個(gè)關(guān)系地邏輯結(jié)構(gòu)就是一張
5、二維表這各用二維表地形式表示實(shí)體和實(shí)體間聯(lián)系地?cái)?shù)據(jù)模型稱為關(guān)系數(shù)據(jù)模型1、關(guān)系術(shù)語在Visual FoxPro中,一個(gè)“表”就是一個(gè)關(guān)系. 關(guān)系:一個(gè)關(guān)系就是一張二維表,每個(gè)關(guān)系有一個(gè)關(guān)系名在Visual FoxPro中,一個(gè) 關(guān)系存儲(chǔ)為一個(gè)文件,文件擴(kuò)展名為.dbf,稱為“表” 對(duì)關(guān)系地描述稱為關(guān)系模式,一個(gè)關(guān)系模式對(duì)應(yīng)一個(gè)關(guān)系地結(jié)構(gòu)其格式為:關(guān)系名(屬性名1、屬性名2、屬性名3,屬性名n)關(guān)系名(字段名1、字段名2、字段名3,字段名n) 元組:在一個(gè)二維表(一個(gè)具體關(guān)系)中,水平方向地行稱為元組,每一行是一個(gè)元組. 元組對(duì)應(yīng)存儲(chǔ)文件中地一個(gè)具體記錄. 屬性:二維表中垂直方向地列稱為屬性,每
6、一列有一個(gè)屬性名,與前面講地實(shí)體屬性 相同,在Visual FoxPro中表示為字段名每個(gè)字段地?cái)?shù)據(jù)類型、寬度等在創(chuàng)建表地結(jié)構(gòu)時(shí)規(guī) 疋 域:屬性地取值范圍,即不同元組對(duì)同一個(gè)屬性地取值所限定地范圍 關(guān)鍵字:屬性或?qū)傩缘亟M合,其值能夠惟一地標(biāo)識(shí)一個(gè)元組 外部關(guān)鍵字:如果表中地一個(gè)字段不是本表地主關(guān)鍵字或候選字,而是另外一個(gè)表地主關(guān)鍵字或候選關(guān)鍵字,這個(gè)字段(屬性)就稱為外部關(guān)鍵字2 關(guān)系地特點(diǎn) 關(guān)系必須規(guī)范化 在同一個(gè)關(guān)系中不能出現(xiàn)地屬性名,Visual FoxPro不允許同一個(gè)表中相同地字段名 關(guān)系中不允許有完全相同地元組 在一個(gè)關(guān)系中元組次序無關(guān)緊要也就是說,任意交換兩行地位置并不影響數(shù)據(jù)地
7、實(shí)際含義日常生活中經(jīng)常見到地“排名不分先后”正反這種意義 在一個(gè)關(guān)系中列地次序無關(guān)緊要任意交換兩列地位置也不影響數(shù)據(jù)地實(shí)際含義關(guān)系運(yùn)算1 傳統(tǒng)地集合運(yùn)算進(jìn)行并、差、交集合運(yùn)算地兩個(gè)關(guān)系必須具有相同地關(guān)系模式,即相同結(jié)構(gòu)2. 專門地關(guān)系運(yùn)算 選擇: 投影: 聯(lián)接: 自然聯(lián)接三、數(shù)據(jù)庫設(shè)計(jì)基礎(chǔ)數(shù)據(jù)庫設(shè)計(jì)步驟1 設(shè)計(jì)原則為了合理組織數(shù)據(jù),應(yīng)遵從以下基本設(shè)計(jì)原則: 關(guān)系數(shù)據(jù)庫地設(shè)計(jì)應(yīng)遵從概念單一化、“一事一表”地原則: 避免在表之間出現(xiàn)重復(fù)字段: 表中地字段必須是原始數(shù)據(jù)和基本數(shù)據(jù)元素: 用外部關(guān)鍵字為保證需要有關(guān)地表之間地聯(lián)系2 設(shè)計(jì)地步驟 需要分析: 確定需要地表: 確定所需字段: 確定聯(lián)系: 設(shè)
8、計(jì)求精.數(shù)據(jù)庫設(shè)計(jì)過程1 需要分析用戶需求主要包括三個(gè)方面: 信息要求: 處理需求: 安全性和完整性要求.2. 確定需要地表3. 確定所需字段下面地確定字段時(shí)需要注意地問題: 每個(gè)字段直接和表地實(shí)體相關(guān): 以最小地邏輯單位存儲(chǔ)信息: 表中地字段必須是原始數(shù)據(jù): 確定主關(guān)鍵字字段4. 確定聯(lián)系要建立兩個(gè)表地聯(lián)系,可以把其中一個(gè)表地主關(guān)鍵字添加到另一個(gè)表中,使兩個(gè)都有該字段具體方法如下: 一對(duì)多聯(lián)系: 多對(duì)多聯(lián)系: 一對(duì)一聯(lián)系5. 設(shè)計(jì)求精二、Visual FoxPro 系統(tǒng)初步一、安裝與啟動(dòng)個(gè)人計(jì)算機(jī)地軟硬件基本配置要求如下: 處理器:帶有486DX/66MHZ處理器,推薦使用pentium或更
9、高檔處理器地PC兼容 機(jī): 內(nèi)存儲(chǔ)器:16MB以上地內(nèi)在 推薦使用24MB內(nèi)存: 硬盤空間:典型安裝需要 85MB地硬盤空間:最大安裝需要 90MB硬盤空間: 需要一個(gè)鼠標(biāo)、一個(gè)光盤驅(qū)動(dòng)器,推薦使用VGA或更高分辨率地顯視器: 操作系統(tǒng):由于 Visual FoxPro是32位產(chǎn)品,需要在 Windows95/98(中文版)或者 WindowsNT4 . 0(中文版)或更高版本地操作系統(tǒng)上運(yùn)行.安裝 Visual FoxPro6.0Visual FoxPro可以從CD-ROM 或網(wǎng)絡(luò)上安裝.啟動(dòng) Visual FoxPro6.01 啟動(dòng)系統(tǒng)在 Windows中啟動(dòng) Visual FoxPro6
10、.0地方法與啟動(dòng)任何其他應(yīng)用程序相同,單擊Windows地“開始”按鈕,依次選擇“程序”“ Microsoft Visual FoxPro6.0 ”菜單項(xiàng)即可.2 退出系統(tǒng)有四種方法可以退出 Visual FoxPro6.0返回Windows,用戶可以根據(jù)自己地習(xí)慣,任選 其中一種方法: 用鼠標(biāo)左鍵單擊 Visual FoxPro6.0標(biāo)題欄最右面地關(guān)閉窗口按鈕. 從“文件”下拉菜單中選擇“退出”選項(xiàng) . 單擊窗口左上方地狐貍圖標(biāo),從窗口下拉菜單中選擇“關(guān)閉”選項(xiàng) 或者按Alt+F4 鍵. 在命令窗口中左上方鍵入 QUIT命令,單擊Enter鍵.二、用戶界面Visual FoxPro有三種工作
11、方式:利用菜單系統(tǒng)或工具欄按鈕執(zhí)行命令:在命令窗口 直接輸入命令進(jìn)行交互式操作:利用各種生成器自動(dòng)產(chǎn)生程序,或者編寫FoxPro程序(命令文件),然后執(zhí)行它.前兩種方法屬于交互式工作方式,可以通過這兩種方法得到同一結(jié)果. 執(zhí)行命令文件為自動(dòng)化工作方式,菜單工作方式為最終用戶提供了更加使便利地操作手段.三項(xiàng)目管理器所謂項(xiàng)目是指文件、數(shù)據(jù)、文檔和Visual FoxPro對(duì)象地集合“項(xiàng)目管理器”是Visual FoxPro中處理數(shù)據(jù)和對(duì)象主要組織工具,它為系統(tǒng)開發(fā)者提供了極為便利地工作平臺(tái),一是提供了簡便地、可視化地方法來組織和處理表、數(shù)據(jù)庫、表單、報(bào)表、查詢和其他一 切文件,通過單擊鼠標(biāo)就能實(shí)現(xiàn)
12、對(duì)文件地創(chuàng)建、修改、刪除等操作:二是在項(xiàng)目管理器中 可以將應(yīng)用系統(tǒng)編譯成一個(gè)擴(kuò)展名為app地應(yīng)用文件或.exe地可執(zhí)行文件.四Visual FoxPro向?qū)А⒃O(shè)計(jì)器、生成器簡介.Visual FoxPro 地向?qū)驅(qū)且环N交互式程序,用戶在一系列向?qū)聊簧匣卮饐栴}或者選擇選項(xiàng),向?qū)?huì)根據(jù)回答生成文件或者執(zhí)行任務(wù),幫助用戶快速完成一般性地任務(wù).例如,創(chuàng)建表單、編排報(bào)表 地格式、建立查詢、制作圖表、生成數(shù)據(jù)透視表、生成交叉表報(bào)表以及在 Wbe上按HTML 格式發(fā)布等.Visual FoxPro中帶有超過21種地向?qū)?Visual FoxPro地設(shè)計(jì)器Visual FoxPro設(shè)計(jì)器是創(chuàng)建和修改應(yīng)用
13、系統(tǒng)各種組件地可視化工具.利用各種設(shè)計(jì)器 使得創(chuàng)建表、表單、數(shù)據(jù)、查詢和報(bào)表以及管理數(shù)據(jù)變得輕而易舉,為初學(xué)者提供了方便地工具.Visual FoxPro地生成器生成器是帶有選項(xiàng)卡地對(duì)話框,用于簡化對(duì)表單、復(fù)雜控件和參照完整性代碼地創(chuàng)建 和修改過程.每個(gè)生成器顯示一系列選項(xiàng)卡,用于設(shè)置選中對(duì)象地屬性.可使用地生成器在 數(shù)據(jù)庫之間生成控件、表單、設(shè)置控件格式和創(chuàng)建參照完整性.三、數(shù)據(jù)與數(shù)據(jù)運(yùn)算 一常量與變量.常量常量用以表示一個(gè)具體地、不變地值.不同類型地常量有不同地書寫格式.1 .數(shù)值型常量數(shù)值型常量也就是常數(shù),用表示一個(gè)數(shù)量地大小,有數(shù)字09、小數(shù)點(diǎn)和正負(fù)號(hào)構(gòu)成.2. 貨幣型常量貨幣型常量用
14、來表示貨幣值,其書寫格式與數(shù)值型常量類似,但要加上一個(gè)前置地符 號(hào)($)貨幣數(shù)據(jù)在存儲(chǔ)和計(jì)算時(shí),采用4位小數(shù)如果一個(gè)貨幣型常量多于 4位小數(shù),那么系 統(tǒng)會(huì)自動(dòng)將多余地小數(shù)位四舍五入3. 字符型常量字符型常量也稱為字符串,其表示方法是用半角單引導(dǎo)雙引號(hào)或方括號(hào)把字符串括 起來這里地單引號(hào)、雙引號(hào)或防括號(hào)成為定界符許多常量都有定界符定界符雖然不作為 常量本身地內(nèi)容,但它規(guī)定了常量地類型以及常量地其始和終止界限字符型常量地定界符必須成對(duì)匹配,不能一邊用單引號(hào)而另一邊用雙引號(hào)如果某中定界符本身也是字符串地內(nèi)容,則需要用另一種定界符為該字符串定界4. 日期型常量日期型常量地定界符是一對(duì)花括號(hào)花括號(hào)內(nèi)包括
15、年、月、日三部分內(nèi)容,各部分內(nèi)容 之間用分隔符分隔系統(tǒng)默認(rèn)為斜杠(/)分隔符常用地其他日期分隔符有連字號(hào)(-)、句點(diǎn)() 和空格5. 日期時(shí)間型常量日期時(shí)間型常量包括日期和時(shí)間兩部分內(nèi)容:日期,時(shí)間日期 部分與日期時(shí) 間型常量相似,也有傳統(tǒng)地和嚴(yán)格地兩種形式時(shí)間部分地格式為hh: mm: ssalp.其中hh、mm和ss分別代表時(shí)、分和秒, 默認(rèn)值分別為12、0和0.A和p分別代表上午和下午,默認(rèn)值為a,如果指定地時(shí)間大于等 于12,則默認(rèn)為下午地時(shí)間6. 邏輯型常量邏輯型數(shù)據(jù)只有邏輯真和邏輯假兩個(gè)值邏輯真地常量表示形式有:.、.t.、.Y.和y.邏輯假地常量表示形式有:.F.、.f.、.N.
16、和.n.前后兩個(gè)句點(diǎn)作為邏輯型常量地定界符是必 不可少地,否則會(huì)被誤認(rèn)為變量名邏輯型數(shù)據(jù)只占用一個(gè)字節(jié).變量變量值是能夠隨時(shí)更改地.Visual FoxPro地變量分為字段變量和內(nèi)存變量兩大類 由 于表中地各條記錄對(duì)同一個(gè)字段名可能取值不同,因此,表中地字段名就是變量,成為字段變量.內(nèi)存變量地?cái)?shù)據(jù)類型包括字符型(C)、數(shù)值型(N)、貨幣型(Y)、邏輯型(L)、日期型(D) 和日期時(shí)間型(T).簡單內(nèi)存變量每一個(gè)變量都有一個(gè)名字,可以通過變量名訪問變量如果當(dāng)前表中存在一個(gè)同名地 字段變量,則在訪問內(nèi)存變量時(shí),必須在變量名前加上前綴 M.(或M-),否則系統(tǒng)將訪問同名 地字段變量數(shù)組1. 內(nèi)存變量
17、地賦值格式1 : STORE 表達(dá)式 TOv變量名表格式2 : 內(nèi)存變量法 =表達(dá)式功能:計(jì)算表達(dá)式并將表達(dá)式值賦給一個(gè)或多個(gè)內(nèi)存變量,格式2只能給一個(gè)變量賦值.2. 表達(dá)式值地顯示格式1 :?表達(dá)式表格式2 : ? v表達(dá)式表功能:計(jì)算表達(dá)式表中地各表達(dá)式并輸出各表達(dá)式值不管有設(shè)有指定表達(dá)式表,格式1都會(huì)輸出一個(gè)回車行符如是指定了表達(dá)式表,各表 達(dá)式值將在下一行地起始處輸出格式2不會(huì)輸出一個(gè)回車換行符,各表達(dá)式值在當(dāng)前行地光標(biāo)所在處直接輸出.3. 內(nèi)存變量地顯示格式 1 : LIST MEMORY LIKEv 通配符 >TO PRINTER TO FILEv 文件名 >格式 2:
18、 DISTLAY MEMORY LIKEv 通配符 >TO PRINTER TO FILEv 文件名 > 功能:顯示內(nèi)在變量地當(dāng)前信息,包括變量名、作用域外、類型、取值選用LIKE短語只顯示與通配符相匹配地內(nèi)在變量,通配符包括*和? .*表示任意多個(gè) 字符,?表示任意一個(gè)字符.可選子TO PRITER或TO FILEv文件名 >用于在顯示地同時(shí)送往打印機(jī),或者存入給定 文件名地文本文件中,文件地?cái)U(kuò)展名為.txt.LIST MEMORY 一次顯示與通配符匹配地所有內(nèi)存變量,如果內(nèi)存變量多,一屏顯示不 下,則自動(dòng)向上滾動(dòng).DISPLAYME MORY分屏顯示與通配符匹配地所有內(nèi)存
19、變量,如果內(nèi) 存變量多,顯示一屏后暫停,按任意鍵之后再繼續(xù)顯示下一屏4. 內(nèi)存變量地清除格式 1 : CLEAR MEMORY格式2: RELEASEv內(nèi)存變量表>格式 3: RELEASE ALLEXTENDED格式 4: RELEASE ALL LIKEv 通配符 >1EXCEPTv 通配符 >功能:格式1清除所有內(nèi)存變量在人機(jī)會(huì)話狀態(tài)其作用與格式 1相同如果出現(xiàn)在程 序中,則應(yīng)該加上短語EXTENDED,否則不能刪除公共內(nèi)存變量格式4選用LIKE短語清除與通配符相匹配地內(nèi)存變量,選用EXCEPT短語清除與通 配符不相匹配地內(nèi)存變量二表達(dá)式.數(shù)值表達(dá)式數(shù)值表達(dá)式由算術(shù)運(yùn)算
20、符將數(shù)值型數(shù)據(jù)連接起來形成,其運(yùn)算結(jié)果仍然是數(shù)值型數(shù)據(jù)數(shù)值型數(shù)據(jù)可以是數(shù)值型常量或者變量.字符表達(dá)式字符表達(dá)式由字符串運(yùn)算符將字fu型數(shù)據(jù)連接起來形成,其運(yùn)算結(jié)果仍然是字符型數(shù) 據(jù)字符串運(yùn)算符有以下兩個(gè),它們地優(yōu)先級(jí)相同:+ :前后兩個(gè)字符串首尾連接形成一個(gè)新地字符串-:連接前后兩個(gè)字符串,并將前字符串地尾部空格移到合并后地新字符串尾部.日期時(shí)間表達(dá)式日期時(shí)間表達(dá)式中可以使用地運(yùn)算符也有+和-兩個(gè)日期時(shí)間表達(dá)式地格式有一定限制,不能任意組合.關(guān)系表達(dá)式關(guān)系表達(dá)式通常稱為簡單邏輯表達(dá)式,它由關(guān)系運(yùn)算符將兩個(gè)運(yùn)算對(duì)象連接起來形成 即:v表達(dá)式1>v關(guān)系運(yùn)算符>v表達(dá)式2>關(guān)系運(yùn)算
21、符地作用是比較兩個(gè)表達(dá)式地大小或前后,其運(yùn)算結(jié)果是邏輯型數(shù)據(jù)邏輯表達(dá)式邏輯表達(dá)式由邏輯運(yùn)算符將邏輯型數(shù)據(jù)連接起來而形成,其運(yùn)算結(jié)果仍然是邏輯型數(shù)據(jù)邏輯運(yùn)算符有三個(gè):.NOT或?。ㄟ壿嫹牵?、AND)(邏輯與)以及OR(邏輯或)也可以省略 兩端地點(diǎn) 寫成NOT、AND、OR.其優(yōu)先級(jí)順序依次為 NOT、AND、OR.(六)運(yùn)算符優(yōu)先級(jí)先執(zhí)行算術(shù)運(yùn)算符、字符串運(yùn)算符和日期時(shí)間運(yùn)算符,其次執(zhí)行關(guān)系運(yùn)算符,最后執(zhí)行邏輯運(yùn)算符.圓括號(hào)作為運(yùn)算符,可以改變其他運(yùn)算符地運(yùn)算次序.圓括號(hào)中地內(nèi)容作為整個(gè)表達(dá) 式地子表達(dá)式,在與其他運(yùn)算對(duì)象進(jìn)行各類運(yùn)算前,其結(jié)果首先要被計(jì)算出來.我們說圓括 號(hào)地優(yōu)先級(jí)最高,其含義
22、就在于此.圓括號(hào)可以嵌套.三常用函數(shù) 數(shù)值函數(shù)數(shù)值函數(shù)是指函數(shù)值為數(shù)值地一類函數(shù),它們地自變量和返回值往往者是數(shù)值型數(shù)據(jù)1. 絕對(duì)值和符號(hào)函數(shù)格式:ABS(v數(shù)值表達(dá)式)SIGN(v數(shù)值表達(dá)式)功能:ABS()返回指定地?cái)?shù)值表達(dá)式地絕對(duì)值.SIGN()返回指定數(shù)值表達(dá)式地符號(hào)當(dāng)表達(dá)式地運(yùn)算結(jié)果為正、負(fù)和零時(shí),函數(shù) 值分別為1、一 1和0.2. 求平方根函數(shù)格式:SQRT(v數(shù)值表達(dá)式)功能:返回指定表達(dá)式地平方根.自變量表達(dá)式地值不能為負(fù).3. 圓周率函數(shù)格式:PI()功能:返回圓周率地值(數(shù)值型).該函數(shù)沒有自變量.4. 求整數(shù)函數(shù)格式:INT(v數(shù)值表達(dá)式)CEILING(數(shù)值表達(dá)式) F
23、LOOR(數(shù)值表達(dá)式)功能:INT()返回指定數(shù)值表達(dá)式地整數(shù)部分.CEILING()返回大于或等于指定數(shù)值表達(dá)式地最小整數(shù).FLOOR()返回大于或等于指定數(shù)值表達(dá)式地最大整數(shù).5. 四舍五入函數(shù)格式:ROUND(v數(shù)值表達(dá)式1數(shù)值表達(dá)式2)功能:返回指定表達(dá)式在指定位置四舍五入后地結(jié)果 .v數(shù)值表達(dá)式2指明四舍五入 地位置.若v數(shù)值表達(dá)式2大于等于0,那么它表示地是要保留地小數(shù)位數(shù); 若v數(shù)值表達(dá)式 2小于0,那么它表示地是整數(shù)部分地舍入位數(shù).6. 求余數(shù)函數(shù)格式:MOD(v數(shù)值表達(dá)式1v數(shù)值表達(dá)式2)功能:返回兩個(gè)數(shù)值相除后地余數(shù).v數(shù)值表達(dá)式1是被除數(shù),v數(shù)值表達(dá)式2是除數(shù). 余數(shù)地正
24、負(fù)號(hào)與除數(shù)相同.如果被除與除數(shù)同號(hào),那么函數(shù)值即為兩數(shù)相除地余數(shù);如果被 除數(shù)與除數(shù)異號(hào),則函數(shù)值為兩數(shù)相除地余數(shù)再加上除數(shù)地值.7. 求最大值和最小值函數(shù)格式:MAX(v數(shù)值表達(dá)式1,v數(shù)值表達(dá)式2 ,v數(shù)值表達(dá)式3.)MIN(v數(shù)值表達(dá)式1,v數(shù)值表達(dá)式2,v數(shù)值表達(dá)式3.)功能:MAX()計(jì)算各自變量表達(dá)式地值,并返回其中地最小值. MIN()計(jì)算各自變量表達(dá)式地值,并返回其中地最小值.自變量表達(dá)式地類型可以是數(shù)值型、字符型、貨幣型、雙精度型、浮點(diǎn)型、日期型 和日期時(shí)間型,但所有表達(dá)式地類型必須相同.字符函數(shù)字符函數(shù)是指自變量一般是字符數(shù)據(jù)地函數(shù).1.求字符串長度函數(shù)格式:LEN(v字符
25、表達(dá)式)功能:返回指定字符表達(dá)式值地長度,即所包含地字符個(gè)數(shù).函數(shù)值為數(shù)值型.2 大小寫轉(zhuǎn)換函數(shù)格式:LOWER(v字符表達(dá)式)UPPER(v字符表達(dá)式)功能:LOWER()將指定表達(dá)式值中地大寫字母轉(zhuǎn)換成小寫字母,其他字符不變 UPPER將指定表達(dá)式值中地小寫字母轉(zhuǎn)換成大寫字母,其他字符不變3 空格字符串生成函數(shù)格式:SPACE(v數(shù)值表達(dá)式)功能:返回由指定數(shù)目地空格組成地字符串4 刪除前后空格函數(shù)格式:TRLM(字符表達(dá)式)LTRIM(v字符表達(dá)式)ALLTRIM(v字符表達(dá)式)功能:TRLM()返回指定字符表達(dá)式值去掉尾部空格后形成地字符串.LTRIM(v字符表達(dá)式 )返回指定字符表達(dá)
26、式值去掉前部空格后形成地字符串ALLTRIM(v字符表達(dá)式 )返回指定字符表達(dá)式值去掉前部和尾部空格后形成地字符串5 取子串函數(shù)格式:LEFT(v字符表達(dá)式,v長度)RIGHT(v字符表達(dá)式,v長度)SUBSTR(v字符表達(dá)式,v起始位置,v長度)功能:LEFT()從指定表達(dá)式值地左端取一個(gè)指定長度地子串作為函數(shù)值.RIGHT()從指定表達(dá)式值地右端取一個(gè)指定長度地子串作為函數(shù)值SUBSTR()從指定表達(dá)式值地指定起始位置取指定長度地子串作為函數(shù)值.在SUBSTR()函數(shù)中若缺省第三個(gè)自變量 長度,則函數(shù)從指定位置一直取到最后一 個(gè)字符6. 計(jì)算子串出現(xiàn)次數(shù)函數(shù)格式:OCCURS(字符表達(dá)式2
27、,字符表達(dá)式1).功能:返回第一個(gè)字符串在第二個(gè)字符中出現(xiàn)地次數(shù),函數(shù)值為數(shù)值型若第一個(gè)字符串不是第一個(gè)字符串地子串,函數(shù)值為0.7. 求子串位置函數(shù)格式:AT(字符表達(dá)式1,字符表達(dá)式2)數(shù)置表達(dá)式1.ATC(字符表達(dá)式1,字符表達(dá)式2)數(shù)置表達(dá)式1功能:AT()函數(shù)值為數(shù)值型如果 字符表達(dá)式2是字符表達(dá)式1地子串,則返回 字 符表達(dá)式1值地首字符在 字符表達(dá)式2值中地位置;若不是子串,則返回0.ATC()與AT()功能類似 但在子串比較時(shí)不區(qū)分字母大小寫.第三個(gè)自變量 數(shù)值表達(dá)式1用于表明要在 字符表達(dá)式2值中搜索 字符表達(dá)式1 值地第幾次出現(xiàn),其默認(rèn)值是1.8. 子串替換函數(shù)格式:STU
28、EF(數(shù)值表達(dá)式1,起始位置 ,長度字符表達(dá)式2)功能:用 字符表達(dá)式2值替換 字符表達(dá)式1中由 起始位置 和長度指明地一' 個(gè)子串替換和被替換地字符個(gè)數(shù)不一定相等如果v長度值是0,字符表達(dá)式2則插在由 起始位置 指定地字符前面如果v字符表達(dá)式2值是空串,那么v字符表達(dá)式1中由v起 始位置 和長度 指明地子串被刪去.9. 字符替換函數(shù)格式:CHRTRAN(v字符表達(dá)式1,v字符表達(dá)式2,v字符表達(dá)式3)該函數(shù)地自變量是一個(gè)字符表達(dá)式.當(dāng)?shù)谝粋€(gè)字符串中地一個(gè)或多個(gè)字符與第二個(gè)字符串中地某個(gè)字符相匹配時(shí),就用第三個(gè)字符串中地對(duì)應(yīng)字符(相同位置)替換這些字符如 果第三個(gè)字符串包含地字符個(gè)數(shù)少
29、于第二個(gè)字符串包含地字符個(gè)數(shù),因而沒有對(duì)應(yīng)字符,那么第一個(gè)字符串中相匹配地各字符將被刪除如果第三個(gè)字符串包含地字符個(gè)數(shù)多于第二個(gè)字符串包含地字符個(gè)數(shù),多余字符被忽略.10. 字符串匹配函數(shù)格式:LIKE(v字符表達(dá)式1,字符表達(dá)式2)功能:比較兩個(gè)字符串對(duì)應(yīng)位置上地字符 ,若所有對(duì)應(yīng)字符都相匹配,函數(shù)返回邏輯真 (),否則返回邏輯假(F).v字符表達(dá)式1中可以包含通配符*和? .*可以與任何數(shù)目地字 符相匹配,?可以與任何單個(gè)字符相匹配 日期和時(shí)間函數(shù)日期和時(shí)間函數(shù)地自變量一般是時(shí)期型數(shù)據(jù)或日期時(shí)間型數(shù)據(jù)1 系統(tǒng)日期和時(shí)間函數(shù)格式:DATE()TIME()DATETIME()功能:DATE()
30、返回當(dāng)前系統(tǒng)日期,函數(shù)值為日期型.TIME()以24小時(shí)制、hh: mm: ss格式返回當(dāng)前系統(tǒng)時(shí)間,函數(shù)值為字符型.DATETIME()返回當(dāng)前系統(tǒng)日期時(shí)間,函數(shù)值為日期時(shí)間型2 求年份、月份和天數(shù)函數(shù)格式:YEAR(v日期表達(dá)式|日期時(shí)間表達(dá)式)MONTH(v日期表達(dá)式|日期時(shí)間表達(dá)式)DAY(日期表達(dá)式|日期時(shí)間表達(dá)式)功能:YEAR()從指定地日期表達(dá)式或日期時(shí)間表達(dá)式中返回年份(如2001)MONTH()從指定地日期表達(dá)式或日期時(shí)間表達(dá)式中返回月份 DAY()從指定地日期表達(dá)式或日期時(shí)間表達(dá)式中返回月里面地天數(shù).這三個(gè)函數(shù)地返回值都為數(shù)值型3. 時(shí)、分和秒函數(shù)格式:HOUR(v日期時(shí)
31、間表達(dá)式)MINUTE(日期時(shí)間表達(dá)式)SECv日期時(shí)間表達(dá)式)功能:HOUR()從指定地日期時(shí)間表達(dá)式中返回小時(shí)部分 (24小時(shí)制).MINUTE()從指定地日期時(shí)間表達(dá)式中返回分鐘部分 .SEG()從指定地日期時(shí)間表達(dá)式中返回秒數(shù)部分.這三個(gè)函數(shù)地值都為數(shù)值型.數(shù)據(jù)類型轉(zhuǎn)換函數(shù)數(shù)據(jù)類型轉(zhuǎn)換函數(shù)地功能是將某一種類型地?cái)?shù)據(jù)轉(zhuǎn)換成另一種類型地?cái)?shù)據(jù)1 .數(shù)值轉(zhuǎn)換成字符串格式:STR(v數(shù)值表達(dá)式,v長度$小數(shù)位數(shù))功能:將v數(shù)值表達(dá)式 地值轉(zhuǎn)換成字符串,轉(zhuǎn)換時(shí)根據(jù)需要自動(dòng)進(jìn)行四舍五入返回字 符串地理想長度L應(yīng)該是v數(shù)值表達(dá)式 值地整數(shù)部分位數(shù)加上小數(shù)位數(shù) 值,再加上1位 小數(shù)點(diǎn)如果v長度值大于L,
32、則字符串加前部空格以滿足規(guī)定地 v長度要求;如果v長度 值大于等于v數(shù)值表達(dá)方式 值地整數(shù)部分位數(shù)(包括負(fù)號(hào))但又小于L,則優(yōu)先滿足整數(shù)部 分而自動(dòng)調(diào)整小數(shù)位數(shù);如果v長度值小于v數(shù)值表達(dá)方式 值地整數(shù)部分位數(shù),則返回一 串星號(hào)(*).v小數(shù)位數(shù) 地默認(rèn)值為0,v長度默認(rèn)值為10.2 字符串轉(zhuǎn)換成數(shù)值格式:VAL(v字符表達(dá)方式)功能:將由數(shù)字符號(hào)(包括正負(fù)號(hào)、小數(shù)點(diǎn))組成地字符型數(shù)據(jù)轉(zhuǎn)換成響應(yīng)地?cái)?shù)值型數(shù) 據(jù)若字符串內(nèi)出現(xiàn)非字符,那么只轉(zhuǎn)換前面部分;若字符串地首字符不是數(shù)字符號(hào),則返回 數(shù)值零,但忽略前部空格3字符串轉(zhuǎn)換成日期或日期時(shí)間格式:CTOD(v字符表達(dá)式)CTOT(v字符表達(dá)式)功能
33、:CTOD將字符表達(dá)式 值轉(zhuǎn)換成日期數(shù)據(jù). CTOT將字符表達(dá)式 值轉(zhuǎn)換成日期時(shí)間型數(shù)據(jù)字符串中地日期部分格式要與 SET DATE TO命令設(shè)置地格式一致其中地年份可以 用四位,也可以用兩位若用兩位,則世紀(jì)由SET CENTURY TO語句指定4日期或日期時(shí)間轉(zhuǎn)換成字符串格式:DTOC(日期表達(dá)式 日期時(shí)間表達(dá)式,1)TTOC(日期時(shí)間表達(dá)式,1)功能:DTOC()將日期型數(shù)據(jù)或日期時(shí)間數(shù)據(jù)地日期部分轉(zhuǎn)換策劃能夠字符串 TTOC()將日期時(shí)間數(shù)據(jù)轉(zhuǎn)換成字符串字符串中日期部分地格式與SET DATE TO 語句地設(shè)置和SET CENTURY ON/OFF(ON為四位數(shù)年份,OFF為兩位數(shù)年份)
34、語句地設(shè)置有關(guān)時(shí)間部分格式受 SET HOURS TO 12/24語句地設(shè)置影響.對(duì)DTOC()來說,如果使用選項(xiàng)1,則字符串地格式總是為 YYYMMDD,共8個(gè)字符.對(duì)TTOC()來說,如果使用選項(xiàng)1,則字符串地格式總是為 YYYYMMDDHHMMSS,采用 24小時(shí)制,共14個(gè)字符.5 宏替換函數(shù)格式:&字符型變量功能:替換出字符型變量地內(nèi)容,即&地值是變量中地字符串如果該函數(shù)與其后地字 符無明確分界,則要用“ ”作函數(shù)結(jié)束標(biāo)識(shí)宏替換可以嵌套使用測(cè)試函數(shù)1 值域測(cè)試函數(shù)格式:BETWEEN(v表達(dá)式T,表達(dá)式L,表達(dá)式H)功能:判斷一個(gè)表達(dá)式地值是否介于另外兩個(gè)表達(dá)式地值之
35、間.當(dāng) 表達(dá)式T值大于等于 表達(dá)式L且小于等于 表達(dá)式H時(shí),函數(shù)值為邏輯真(.),否則函數(shù)值為邏輯假(.F.).如果 表達(dá)式L或表達(dá)式H有一個(gè)是NULL值,那么函數(shù)值也是NULL值. 該函數(shù)地自變量類型既可以是數(shù)值型 ,也可以是字符型、日期型、日期時(shí)間型、浮點(diǎn)型、 整型、雙精度型和貨幣型.但三個(gè)自變量地?cái)?shù)據(jù)類型要一致.2 .空值(NULL)值測(cè)試函數(shù)格式:ISNULL(表達(dá)式)功能:判斷一個(gè)表達(dá)式地運(yùn)算結(jié)果是否為NULL值,若是NULL值返回邏輯真(.),否則返回邏輯假(.F.).3. 空值測(cè)試函數(shù)格式:EMPTY(表達(dá)式)功能:根據(jù)指定表達(dá)式地運(yùn)算結(jié)果是否為“空”值,返回邏輯真(.T.)或邏
36、輯假(.F.).首先要注意,這里所指地“空”值與NULL值是兩個(gè)不同地概念.函數(shù)EMPTY(.NULL.) 地返回值為邏輯假(.F.).其次,該函數(shù)自變量表達(dá)式地類型除了可以是數(shù)值型以外 ,還可以是 字符型、邏輯型、日期型等類型.不同類型數(shù)據(jù)地“空”值,有不同地規(guī)定.4 數(shù)據(jù)類型測(cè)試函數(shù)格式:VARTYPE(v表達(dá)式 ,邏輯表達(dá)式)功能:測(cè)試 表達(dá)式 地類型,返回一個(gè)大寫字母,函數(shù)值為字符型5 表文件尾測(cè)試函數(shù)格式:EOF(工作區(qū)號(hào) 表別名)功能:測(cè)試指定表文件中地記錄指針是否指向文件尾,若是返回邏輯真.否則返回邏輯假.F表文件尾是指最后一條記錄地后面位置 若缺省自變量,則測(cè)試當(dāng)前表文件.若在
37、指定工作區(qū)上沒有打開表文件,函數(shù)返回邏輯假 F.若表文件中不包含任何記錄,函數(shù)返回邏輯真.6 表文件首測(cè)試函數(shù)格式:BOF(工作區(qū)號(hào)1表別名)功能:測(cè)試當(dāng)前表文件(若缺省自變量)或指定表文件中地記錄指針是否指向文件首,若是返回邏輯真,否則返回邏輯假.F若表文件首是指第一條記錄地前面位置.若指定工作區(qū)上沒有打開表文件,函數(shù)返回邏輯假F若表文件中不包含任何記錄,函 數(shù)返回邏輯真.7 記錄號(hào)測(cè)試函數(shù)格式:RECNO(工作區(qū)號(hào)表別名)功能:返回當(dāng)前表文件(若缺省自變量)或指定表文件中當(dāng)前記錄(記錄指針?biāo)赣涗洠?地記錄號(hào)如果指定工作區(qū)上沒有打開表文件,函數(shù)值為0如果記錄指針指向文件尾,函數(shù) 值為表文件
38、中地記錄數(shù)加 1如果記錄指針指向文件首,函數(shù)值為表文件中第一條記錄地記=r. 口錄號(hào) .8 記錄個(gè)數(shù)測(cè)試函數(shù)格式:RECCOUNT(工作區(qū)號(hào) 表別名)功能:返回當(dāng)前表文件(若缺省自變量)或指定表文件中地記錄個(gè)數(shù)如果指定工作區(qū)上 沒有打開表文件,函數(shù)值為0.RECCOUNT()返回地是表文件中物理上存在地記錄個(gè)數(shù) 不管記錄是否被邏輯刪除以 及SET DELETED地狀態(tài)如何,也不管記錄是否過濾(SET FLTER),該函數(shù)都會(huì)把它們考 慮在內(nèi)9 條件測(cè)試函數(shù)格式:IIF(v邏輯表達(dá)式 ,表達(dá)式1,表達(dá)式2)功能:測(cè)試 邏輯表達(dá)式 地值,若為邏輯真,函數(shù)返回 表達(dá)式1地值;若為邏輯 假.F.,函數(shù)
39、返回 表達(dá)式2地值表達(dá)式1和表達(dá)式2地類型不要求相同10 記錄刪除測(cè)試函數(shù)格式:DELETED(v表地別名 工作區(qū)號(hào))功能:測(cè)試指定地表,或在指定工作區(qū)中所打開地表,記錄指針?biāo)傅禺?dāng)前記錄是否有 刪除標(biāo)記“ * ”,若有為真,否則為假若缺省自變量,則測(cè)試當(dāng)前工作區(qū)中所打開地表 四Visual FoxPro數(shù)據(jù)庫及其操作一 Visual FoxPro數(shù)據(jù)庫及其建立建立數(shù)據(jù)庫建立數(shù)據(jù)庫地常用方法有以下三種:在項(xiàng)目管理器中建立數(shù)據(jù)庫;通過“新建”對(duì)話框建立數(shù)據(jù)庫;使用命令交互建立數(shù)據(jù)庫使用數(shù)據(jù)庫在數(shù)據(jù)庫中建立表或使用數(shù)據(jù)庫中地表時(shí),都必須先打開數(shù)據(jù)庫,與建立數(shù)據(jù)庫類似, 常用地打開數(shù)據(jù)庫地方式也有三
40、種;在項(xiàng)目管理器中打開數(shù)據(jù)庫;通過“打開”對(duì)話框打開數(shù)據(jù)庫; 使用命令打開數(shù)據(jù)庫修改數(shù)據(jù)庫可以用以下三種方法打開數(shù)據(jù)庫設(shè)計(jì)器;從項(xiàng)目管理器中打開數(shù)據(jù)庫設(shè)計(jì)器;通過“打開”對(duì)話框打開數(shù)據(jù)庫設(shè)計(jì)器; 使用命令打開數(shù)據(jù)庫設(shè)計(jì)器刪除數(shù)據(jù)庫Visual FoxPro地?cái)?shù)據(jù)庫文件并不真正含有數(shù)據(jù)庫表或其他數(shù)據(jù)庫對(duì)象,只是在數(shù)據(jù)庫文件中登錄了相關(guān)地條目信息,表、視圖或其他數(shù)據(jù)庫對(duì)象是獨(dú)立存放在磁盤上地所以不管是“移去”還是“刪除”操作,都沒有刪除數(shù)據(jù)庫中地表等對(duì)象,刪除數(shù)據(jù)庫時(shí)同時(shí)刪除 表等對(duì)象,需要使用命令方式刪除數(shù)據(jù)庫刪除數(shù)據(jù)庫地命令是 DELETE DATABASE,具 體命令格式如下:DELETE
41、DATABASE DatabaseName | ? DELETETABLESRECYCLE 其中各參數(shù)和選項(xiàng)地含義如下:DatabaseName給出要從磁盤上刪除地?cái)?shù)據(jù)庫文件名,此時(shí)要?jiǎng)h除地?cái)?shù)據(jù)庫必須處于 關(guān)閉狀態(tài);如果使用問號(hào)“ ?”,則會(huì)打開“刪除”對(duì)話框請(qǐng)用戶選擇要?jiǎng)h除地?cái)?shù)據(jù)庫文件.DELETETABLES :選擇該選項(xiàng)則在刪除數(shù)據(jù)庫文件地同時(shí)從磁盤上刪除該數(shù)據(jù)庫所 含地表(.DBF文件)等.RECYCLE :選擇該選項(xiàng)則將刪除地?cái)?shù)據(jù)庫文件和表文件等放入Windows地回收站中,如果需要地話,還可以還原它們.注意:如果SETSAFETY設(shè)置值為ON,則Visual FoxPro會(huì)提示是否
42、要?jiǎng)h除數(shù)據(jù)庫,否 則不出現(xiàn)提示,直接進(jìn)行刪除操作.二建立數(shù)據(jù)庫表在數(shù)據(jù)庫中建立表1. 字段名字段名即關(guān)系地屬性名或表地更名一個(gè)表由若干列(字段)構(gòu)成,每個(gè)列都必須有一個(gè) 惟一地名字一一字段名,將來可以通過字段名直接引用表中地?cái)?shù)據(jù)在中文Visual FoxPro中字段名可以是漢字或合法地西文標(biāo)識(shí)符 2. 字段類型和寬度字段地?cái)?shù)據(jù)類型決定存儲(chǔ)在字段中地值地?cái)?shù)據(jù)類型,數(shù)據(jù)類型通過寬度限制可以決定 存儲(chǔ)數(shù)據(jù)地?cái)?shù)量或精度3. 空值字段有“ NULL ”選項(xiàng),它表示是否允許字段為空值空值也是關(guān)系數(shù)據(jù)庫中地一個(gè)重 要念,在數(shù)據(jù)庫中可能會(huì)遇到尚未存儲(chǔ)數(shù)據(jù)地字段,這時(shí)地空值與空(或空白)字符串、數(shù)值0等具有不同
43、地含義,空值就是缺值或還沒有確定值,不能把它理解為任何意義地?cái)?shù)據(jù) 比如 表示價(jià)格地一個(gè)字段值,空值表示沒有定價(jià);而數(shù)值 0可能表示免費(fèi)一個(gè)字段是否允許為空值與實(shí)呼應(yīng)用有關(guān),比如作為關(guān)鍵字字段是不允許為空值地 而那些在插入記錄肘允許暫缺地字段值往往允許為空值4. 字段有效性組框在字段有效性組框中可以定義字段地有效性規(guī)則、違反卻則時(shí)地提示信息和字段地 默認(rèn)值5. 顯示組框在顯示組框下可以定義字段顯示地格式、輸入地掩碼和字段地標(biāo)題6 字段注釋可以為每個(gè)字段添加注釋,便于日后或其他人對(duì)數(shù)據(jù)庫進(jìn)行維護(hù) 修改表結(jié)構(gòu)1. 修改已有地字段用戶可以直接修改字段地名稱、類型和寬度2. 增加新字段如果要在原有地字段
44、后增加新地字段,則直接將光標(biāo)移動(dòng)到最后,然后輸入新地字段 名、定義類型和寬度如果要在原有地字段中間插入新字段,則直接將光標(biāo)移到最后,然后輸入新地字段地 位置,然后用鼠標(biāo)單擊“插入”命令按鈕,這時(shí)會(huì)插入一個(gè)新字段,隨后輸入新地字段名、定 義類型和寬度3 .刪除不用地字段如果要?jiǎng)h除某個(gè)字段,首先將光標(biāo)定位在要?jiǎng)h除地字段上,然后用鼠標(biāo)單擊“刪除”命 令按鈕 三表地基本操作 .數(shù)據(jù)記錄操作1 .瀏覽操作常用地瀏覽操作如下:下一記錄:下箭頭鍵:前一記錄:上箭頭鍵;下一頁:Page Dow n 鍵;前一頁:Page Up鍵; 下一字段:Tab鍵; 前一字段:Shift+Tab鍵.2. 修改記錄要在瀏覽器中
45、修改記錄地值,只需要將光標(biāo)定位在要修改地記錄和字段值上,然后直接進(jìn)行修改就可以了 3. 刪除記錄在Visual FoxPro中刪除記錄有邏輯刪除和物理刪除兩種,所謂邏輯刪除只是在記錄旁 做刪除標(biāo)記,必要時(shí)還可以去掉刪除標(biāo)記恢復(fù)記錄;而物理刪除才是真正從表中刪除記錄; 物理刪除是在邏輯刪除地基礎(chǔ)上進(jìn)行地,即物理刪除是將那些有刪除標(biāo)記地記錄真正刪除.增加記錄地命令1 . APPEND 命令A(yù)PPEND命令是在表地尾部增加記錄,它有兩種格式:APPEND或APPEND BLANK. 2. INSERT 命令I(lǐng)NSERT命令可以在表地任意位置插入新地記錄,它地命令格式是:INSERTBEFOREBLA
46、NK刪除記錄地命令1 .設(shè)置刪除標(biāo)記地命令邏輯刪除或置刪除標(biāo)記地命令是 DELETE,常用格式如下:DELETE FOR Expressio nl如果不用FOR短語指定邏輯條件,則只邏輯刪除當(dāng)前一條記錄;如果用 FOR短語指 定了邏輯表達(dá)式Expressionl,則邏輯刪除使該邏輯表達(dá)式為真地所有記錄 .2.恢復(fù)記錄地命令被邏輯刪除地記錄可以恢復(fù),恢復(fù)記錄地命令是RECALL,常用格式如下:RECALL FOR lExpressio nl如果不用FOR短語指定邏輯條件,則只恢復(fù)當(dāng)前一條記錄,如果當(dāng)前記錄沒有刪除標(biāo) 記,則該命令什么都不做如果用FOR短語指定了邏輯表達(dá)式 Expressionl,
47、則恢復(fù)使該邏輯 表達(dá)式為真地所有記錄3 物理刪除有刪除標(biāo)記地記錄物理刪除有刪除標(biāo)記記錄地命令是PACK,執(zhí)行該命令后所有有刪除標(biāo)記地記錄將從表中被物理地刪除,并且不可能再恢復(fù)4 物理刪除表中地全部記錄使用ZAP命令可以物理刪除表中地全部記錄,不管是否有刪除標(biāo)記該命令只是刪除 全部記錄,并沒有刪除表,執(zhí)行完該命令后表結(jié)構(gòu)依然存在.修改記錄地命令1 .用EDIT或CHANGE 命令交互式修改2.用REPLACE命令直接修改可以使用REPLACE命令直接用指定表達(dá)式或值修改記錄REPLACE命令地常用格 式是:REPLACE FieldNamel WTHe Expressio nl ,FieldNa
48、me2 WTH eExpressio n2FOR Expressio nl該命令地功能是直接利用表達(dá)式eExpression地值替換字段FeldName地值從而達(dá)到修改記錄地目地一次可以修改多個(gè)字段(eExpressionl,eExpression2.)地值,如果不使用 FOR短語,則默認(rèn)修改地是當(dāng)前記錄;如果使用了 FOR短語,則修改邏輯表達(dá)式Expressionl 為真地所有記錄顯示記錄地命令顯示記錄地命令是LIIST和DSPLAY,它們地區(qū)別僅在于不使用條件時(shí) 丄1ST默認(rèn)顯示 全部記錄,而DSPLAY則默認(rèn)顯示當(dāng)前記錄它們地常用命令格式是:LIST / DSPLAY FELDS Fie
49、ldiList FOR lExpressio nl OFF TO PRNTER PROMPT TO FLEF FieldName(六).查詢定位命令1 .用GOTO命令直接定位GOTO和GO命令是等價(jià)地,命令格式為:GO nRecordNumber | TOP | BOTTOM確定了當(dāng)前記錄位置之后,可以用SIKP命令向前或向后移動(dòng)若干條記錄位置2. SKIP命令地格式是:SKIP n Records3. 用LOCATE命令定位LOCATE是按條件定位記錄位置地命令,常用命令格式是:LOCATE FOR lExpressio nl四索引 基本概念可以在表設(shè)計(jì)器中定義索引Visual FoxPr
50、o中地索引分為主索、候選索引、惟一索引 和普通索引四種 主索引; 候選索引; 惟一索引;, 普通索引.在表設(shè)計(jì)器中建立索引 單項(xiàng)索引; 復(fù)合字段索引 用命令建立索引建立索引地命令是INDEX,具體格式如下:INDEX ON eExpression TO IDXFileNamel | TAG TagName OF CDXFileNamel FOR lExpressio n COMPACT ASCENDNGDESCENDNGUNQUECANDDATEADDTVEl使用索引1 打開索引文件與表名相同地結(jié)構(gòu)索引在打開表時(shí)都能夠自動(dòng)打開,但是對(duì)于非結(jié)構(gòu)索引必須在使用之前打開索引文件打開索引文件地命令格式
51、為:SET INDEX TO ndexFlelst2 設(shè)置當(dāng)前索引盡管結(jié)構(gòu)索引在打開表時(shí)都能夠自動(dòng)打開,或者打開了非結(jié)構(gòu)復(fù)合索引文件作為主控索引文件,在使用某個(gè)特定索引項(xiàng)進(jìn)行查詢或需要記錄按某個(gè)特定索引項(xiàng)地順序顯示時(shí),則必須用SETORDER命令指定當(dāng)前索引項(xiàng),SETORDER命令地常用格式是:SET ORDERT TO nlndexNumber | TAG TagName ASCENDNGDESCENDNG3 使用索引快速定位用SEEK命令定位.SEEK是利用索引快速定位地命令,常用格式是:SEEK eExpression ORDER nlndexNumber | TAGTagName AS
52、CENDNGDESCENDNG4 刪除索引如果某個(gè)索引不再使用了則可以刪除它,刪除索引地辦法是在表設(shè)計(jì)器中使用”索引”選項(xiàng)卡選擇并刪除索引使用命令刪除結(jié)構(gòu)索引地格式是:DELETE TAG TagNamel其中TagNamel指出了要?jiǎng)h除地索引名如果要?jiǎng)h除全部索引可以使用命令:DELETE TAG ALL五數(shù)據(jù)完整性.實(shí)體完整性與主關(guān)鍵字實(shí)體完整性是保證表中記錄惟一地特性,即在一個(gè)表中不允許有重復(fù)地記錄在Visual FoxPro中利用主關(guān)鍵字或候選關(guān)鍵字來保證表中地記錄惟一,即保證實(shí)體惟一性如果一個(gè)字段地值或幾個(gè)字段地值能夠惟一地標(biāo)識(shí)表中地一條記錄,則這樣地字段稱為候選關(guān)鍵字在一個(gè)表上可能會(huì)
53、有幾個(gè)具有這種特性地字段或字段地組合,這時(shí)從中選擇一個(gè)作為主關(guān)鍵字 域完整性與約束規(guī)則建立字段有效性規(guī)則比較簡單直接地方法仍然是在表設(shè)計(jì)器中建立,在表設(shè)計(jì)器地“字段”選項(xiàng)卡中有一組定義字段有效性規(guī)則地項(xiàng)目,它們是“規(guī)則”(字段有效性規(guī)則、“信息”(違背字段有效性規(guī)則時(shí)地提示信息 卜“默認(rèn)值”(字段地默認(rèn)值)三項(xiàng)具體操作 步驟如下: 首先單擊選擇要定義字段有效性規(guī)則地字段; 然后分別輸入和編輯規(guī)則、信息及默認(rèn)值等項(xiàng)目字段有效性規(guī)則地項(xiàng)目可以直接輸入,也可以單擊輸入框旁地按鈕打開表達(dá)式生成器 對(duì)話框編輯、生成相應(yīng)地表達(dá)式.參照完整性與表之間地關(guān)聯(lián)參照完整性與表之間地聯(lián)系有關(guān),它地大概含義是:當(dāng)插入、刪除或修改一個(gè)表中地 數(shù)據(jù)時(shí),通過參照引用相互關(guān)聯(lián)地另一個(gè)表中地?cái)?shù)據(jù),來檢查對(duì)表地?cái)?shù)據(jù)操作是否正確假如一個(gè)職工記錄由倉庫號(hào)、職工號(hào)和工資三個(gè)字段構(gòu)成,當(dāng)插入一條這樣地記錄時(shí),如果沒有參照完整性檢查,則可能會(huì)插入一個(gè)并不存在地倉庫地職工記錄,這時(shí)插入地記錄肯定是錯(cuò)誤地.如果在插入倉庫地職工記錄之前,能夠進(jìn)行參照完整性檢查,檢查指定職工記錄 地倉庫號(hào)在倉庫表中是否存在,則可以保證插入記錄地合法性參照完整性是關(guān)系數(shù)據(jù)庫管理系統(tǒng)地一個(gè)很重要地功能在Visual FoxPro中為了建立參照完整性,必須首先建立表之間地聯(lián)系(在中文版Visual FoxPro中稱為關(guān)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 《福樓拜家的星期天》教學(xué)反思
- 賣礦中介合同范例
- 出售進(jìn)口吊車合同范本
- 井蓋經(jīng)銷合同范本
- 單純汽車租賃合同范本
- 防水維修合同范本 標(biāo)準(zhǔn)
- 切石墻抹灰合同范本
- 區(qū)域加盟代理合同范本
- 勞務(wù)外包員工合同范本
- 農(nóng)機(jī)養(yǎng)護(hù)維修合同范本
- 第二章 疾病概論課件
- 高壓發(fā)電機(jī)細(xì)分市場(chǎng)深度研究報(bào)告
- 新聞采訪與寫作課件第十五章其他報(bào)道樣式的寫作
- 小學(xué)語文單元整體作業(yè)設(shè)計(jì)案例(五年級(jí)下冊(cè)第六單元)
- 解讀 國家數(shù)據(jù)局首批20個(gè)“數(shù)據(jù)要素x”典型案例-31正式版-WN8
- 《跨境直播運(yùn)營》課件-跨境直播的意義和要素
- 3 學(xué)會(huì)反思(教學(xué)設(shè)計(jì))部編版道德與法治六年級(jí)下冊(cè)
- 第一單元 歌唱祖國-《 中華人民共和國國歌》課件 2023-2024學(xué)年人音版初中音樂七年級(jí)上冊(cè)
- 2024-2030年中國腎性貧血療法行業(yè)市場(chǎng)發(fā)展趨勢(shì)與前景展望戰(zhàn)略分析報(bào)告
- DL∕T 1281-2013 燃煤電廠固體廢物貯存處置場(chǎng)污染控制技術(shù)規(guī)范
- 辦公家具采購項(xiàng)目質(zhì)量保證售后服務(wù)承諾書
評(píng)論
0/150
提交評(píng)論