




已閱讀5頁,還剩30頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
_Visual Foxpro數(shù)據(jù)庫程序設(shè)計(jì)教案 姓名: 李運(yùn)娣 系別: 計(jì)算機(jī) 第1章 Visual FoxPro 數(shù)據(jù)庫基礎(chǔ)本章重點(diǎn)與學(xué)習(xí)目標(biāo):v 了解數(shù)據(jù)庫系統(tǒng)的相關(guān)概念 數(shù)據(jù)、數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫系統(tǒng) 數(shù)據(jù)庫管理系統(tǒng)發(fā)展過程 概念模型以及常用的數(shù)據(jù)模型層次模型、網(wǎng)狀模型、關(guān)系模型v 掌握關(guān)系數(shù)據(jù)庫 關(guān)系模型的相關(guān)屬于v 數(shù)據(jù)庫設(shè)計(jì)基礎(chǔ) 數(shù)據(jù)庫設(shè)計(jì)的步驟和過程v 了解VF系統(tǒng)的發(fā)展過程 數(shù)據(jù)庫管理系統(tǒng)的發(fā)展 VF的發(fā)展簡史及了解Visual FoxPro系統(tǒng)的特點(diǎn) 掌握VF系統(tǒng)的啟動與退出方法 熟悉VF系統(tǒng)的用戶界面v 熟悉VF項(xiàng)目管理器 創(chuàng)建新項(xiàng)目 項(xiàng)目管理器窗口的各類選項(xiàng)卡教學(xué)器材:多媒體教學(xué)本章課時(shí): 3學(xué)時(shí)1.1 數(shù)據(jù)庫基礎(chǔ)知識1.1.1 計(jì)算機(jī)數(shù)據(jù)管理的發(fā)展1. 數(shù)據(jù)與數(shù)據(jù)處理 數(shù)據(jù)是指存儲在某一種媒體上能夠識別的物理符號;數(shù)據(jù)處理是指將數(shù)據(jù)轉(zhuǎn)換成信息的過程。2. 計(jì)算機(jī)數(shù)據(jù)管理 數(shù)據(jù)管理:是指對數(shù)據(jù)的組織、分類、編碼、存儲、檢索、維護(hù)等,它是數(shù)據(jù)處理的中心問題。數(shù)據(jù)管理技術(shù)的發(fā)展過程:人工管理階段(40年代中-50年代中);文件系統(tǒng)階段(50年代末-60年代中);數(shù)據(jù)庫系統(tǒng)階段(60年代末-現(xiàn)在)。 1.1.2 數(shù)據(jù)庫系統(tǒng)1. 數(shù)據(jù)庫有關(guān)概念數(shù)據(jù)庫(DataBase):指數(shù)據(jù)庫系統(tǒng)中以一定的方式將相關(guān)數(shù)據(jù)組織在一起,存儲在外存儲設(shè)備上形成的、為多個(gè)用戶共享、與應(yīng)用程序相互獨(dú)立的相關(guān)數(shù)據(jù)集合。數(shù)據(jù)庫管理系統(tǒng)(DBMS): 用于建立、使用和維護(hù)數(shù)據(jù)庫的系統(tǒng)軟件。數(shù)據(jù)庫管理系統(tǒng)對數(shù)據(jù)庫進(jìn)行統(tǒng)一的管理和控制,以保證數(shù)據(jù)庫的安全性和完整性。數(shù)據(jù)庫應(yīng)用系統(tǒng):數(shù)據(jù)庫應(yīng)用系統(tǒng)簡稱數(shù)據(jù)庫系統(tǒng),是指系統(tǒng)開發(fā)人員利用數(shù)據(jù)庫系統(tǒng)資源開發(fā)出來的,面向某一類實(shí)際應(yīng)用的應(yīng)用軟件系統(tǒng)。數(shù)據(jù)庫管理員(DBA):負(fù)責(zé)全面管理和實(shí)施數(shù)據(jù)庫控制和維護(hù)的技術(shù)人員。2. 數(shù)據(jù)庫系統(tǒng)的特點(diǎn)數(shù)據(jù)庫系統(tǒng)是指引進(jìn)數(shù)據(jù)庫技術(shù)后的計(jì)算機(jī)系統(tǒng),實(shí)現(xiàn)有組織地、動態(tài)地存儲大量相關(guān)數(shù)據(jù),提供數(shù)據(jù)處理和信息資源共享的便利手段。特點(diǎn):實(shí)現(xiàn)數(shù)據(jù)共享,減少數(shù)據(jù)冗余;采用特定的數(shù)據(jù)模型;具有較高的數(shù)據(jù)獨(dú)立性;有統(tǒng)一的數(shù)據(jù)控制功能1.1.3 數(shù)據(jù)模型1. 實(shí)體的描述:實(shí)體的定義、屬性、實(shí)體集和實(shí)體型2. 實(shí)體間聯(lián)系及聯(lián)系的類型定義:實(shí)體之間相對應(yīng)的關(guān)系稱為聯(lián)系,它反映了現(xiàn)實(shí)世界事物之間的相互關(guān)聯(lián)。類型:一對一聯(lián)系;一對多聯(lián)系;多對多聯(lián)系3. 數(shù)據(jù)模型簡介數(shù)據(jù)模型是在數(shù)據(jù)庫領(lǐng)域中定義數(shù)據(jù)及其操作的一種抽象表示。類型:網(wǎng)狀模型;層次數(shù)據(jù)模型;關(guān)系模型1.2 關(guān)系數(shù)據(jù)庫1.2.1 關(guān)系模型1. 關(guān)系定義的定義及相關(guān)術(shù)語一個(gè)關(guān)系就是一張二維表,通常將一個(gè)沒有重復(fù)行、重復(fù)列的二維表看成一個(gè)關(guān)系,每個(gè)關(guān)系都有一個(gè)關(guān)系名。相關(guān)術(shù)語:元組、屬性、域、關(guān)鍵字、外部關(guān)鍵字2. 關(guān)系的特點(diǎn)n 關(guān)系必須規(guī)范化n 二維表中的每一列都有唯一的字段名且取值性質(zhì)相同n 二維表中不允許出現(xiàn)完全相同的兩行n 二維表中可以任意交換行的順序和列的順序3. 實(shí)際關(guān)系模型一個(gè)具體的關(guān)系是由若干個(gè)關(guān)系模式組成。在VF中,一個(gè)數(shù)據(jù)庫中包含相互之間存在聯(lián)系的多個(gè)表。這個(gè)數(shù)據(jù)庫文件就代表一個(gè)實(shí)際的關(guān)系模型。為了反映出各個(gè)表所表示的實(shí)際實(shí)體之間的聯(lián)系,公共字段名往往起著“橋梁”的作用。 例1.1 部門-職工-工資關(guān)系模型 例1.2 圖書-讀者-借閱關(guān)系模型 1.2.2 關(guān)系運(yùn)算1. 傳統(tǒng)的集合運(yùn)算:交、并、差2. 專門的關(guān)系運(yùn)算選擇定義:從一個(gè)關(guān)系模式中找出滿足給定條件的記錄的操作稱為選擇,選擇是從行的角度進(jìn)行的運(yùn)算,相當(dāng)于對關(guān)系進(jìn)行水平分解。投影定義:投影運(yùn)算從關(guān)系中選取若干屬性形成一個(gè)新的關(guān)系。連接定義:將兩個(gè)關(guān)系模式的若干屬性拼接成一個(gè)新的關(guān)系模式的操作,對應(yīng)的新關(guān)系中,包含滿足連接條件的所有元組。1.3 數(shù)據(jù)庫設(shè)計(jì)基礎(chǔ)1.3.1數(shù)據(jù)庫設(shè)計(jì)步驟1. 設(shè)計(jì)原則n 概念單一化”一事一地”原則n 避免在表之間出現(xiàn)重復(fù)字段n 表中的字段必須是原始數(shù)據(jù)和基本數(shù)據(jù)元素n 用外部關(guān)鍵字保證有關(guān)聯(lián)的表之間的聯(lián)系2. 設(shè)計(jì)步驟n 需求分析n 確定需要的表n 確定所需字段n 確定聯(lián)系n 設(shè)計(jì)求精1.3.2 數(shù)據(jù)庫設(shè)計(jì)過程1需求分析:用戶需求主要包括信息需求、處理需求、安全性和完整性要求。2確定需要的表:數(shù)據(jù)庫設(shè)計(jì)過程中最主要的一步就是確定需要的表,分析的過程實(shí)際上就是對收集到的數(shù)據(jù)進(jìn)行抽象的過程。3確定所需字段 4. 確定聯(lián)系5設(shè)計(jì)求精1.4 Visual FoxPro系統(tǒng)概述Visual FoxPro6.0是微軟公司1998年發(fā)布的可視化編程語言集成包Visual Studio6.0中的一員,是一種用于數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)和應(yīng)用程序開發(fā)的功能強(qiáng)大的面向?qū)ο蟮挠?jì)算機(jī)數(shù)據(jù)庫軟件。1.4.1 Visual FoxPro 6.0的安裝與啟動1. 安裝步驟將Visual FoxPro 6.0系統(tǒng)光盤插入CDROM驅(qū)動器,打開光盤,找到setup.exe文件,雙擊該文件,進(jìn)行安裝向?qū)?。按照安裝向?qū)У奶崾?,單擊“下一步”按鈕根據(jù)提示進(jìn)行安裝。2. 啟動系統(tǒng)單擊Windows的“開始”按鈕,選擇“程序”“Microsoft Visual FoxPro 6.0”“Microsoft Visual FoxPro 6.0”菜單項(xiàng)。1.4.2 Visual FoxPro 6.0的主界面1菜單操作下拉式菜單項(xiàng):主菜單欄中包括8個(gè)下拉式菜單項(xiàng):文件(F)、編輯(E)、顯示(V)、工具(T)、程序(P)、項(xiàng)目(Q)、窗口(W)、幫助(H)。2命令操作顯示與隱藏命令窗口的方法:單擊命令窗口右上角的關(guān)閉按鈕可以關(guān)閉它,然后通過“窗口”菜單下的“命令窗口”選項(xiàng)可以重新打開。3項(xiàng)目管理器窗口 項(xiàng)目管理器是VF中各種數(shù)據(jù)和對象的主要組織工具。 一個(gè)項(xiàng)目是文件、數(shù)據(jù)、文檔和對象的集合。1.4.3 工具欄的使用1顯示或隱藏工具欄2定制工具欄3修改現(xiàn)有工具欄1.4.4 Visual FoxPro 6.0的配置 為了使系統(tǒng)滿足個(gè)性化的要求,可以定制自己的系統(tǒng)環(huán)境。在VF中可以使用“選項(xiàng)”對話框或SET命令進(jìn)行附加的配置設(shè)定,這里主要用“工具”菜單下的“選項(xiàng)”進(jìn)行設(shè)定。1.5 項(xiàng)目管理器項(xiàng)目是指文件、數(shù)據(jù)、文檔和對象的集合?!绊?xiàng)目管理器”是VF中處理數(shù)據(jù)和對象的主要組織工具,它為系統(tǒng)開發(fā)者提供了極為便利的工作平臺,一是提供了簡便的、可視化的方法來組織和處理表、數(shù)據(jù)庫、表單、報(bào)表、查詢和其他一切文件;二是在項(xiàng)目管理器中可以將應(yīng)用系統(tǒng)編譯成一個(gè)擴(kuò)展名為.app的應(yīng)用文件或.exe的可執(zhí)行文件。1.5.1創(chuàng)建項(xiàng)目1創(chuàng)建新項(xiàng)目2打開和關(guān)閉項(xiàng)目3各類文件選項(xiàng)卡1.5.2 使用項(xiàng)目管理器1創(chuàng)建文件2添加文件3修改文件4移去文件5其他按鈕:“瀏覽”按鈕、“關(guān)閉”和“打開”按鈕、“預(yù)覽”按鈕、“運(yùn)行”按鈕、“連編”按鈕1.5.3 定制項(xiàng)目管理器1移動、縮放和折疊2拆分項(xiàng)目管理器3停放項(xiàng)目管理器1.6 向?qū)А⒃O(shè)計(jì)器、生成器簡介VF提供真正的面向?qū)ο蟮某绦蛟O(shè)計(jì)工具,使用它的各種向?qū)?、設(shè)計(jì)器和生成器可以更加簡便、快速、靈活地進(jìn)行應(yīng)用程序開發(fā)。1.6.1 Visual FoxPro的向?qū)?啟動向?qū)?. 使用向?qū)?. 修改用向?qū)?chuàng)建的項(xiàng)1.6.2Visual FoxPro的設(shè)計(jì)器1各種設(shè)計(jì)器:表設(shè)計(jì)器、數(shù)據(jù)庫設(shè)計(jì)器、報(bào)表設(shè)計(jì)器、查詢設(shè)計(jì)器、視圖設(shè)計(jì)器、表單設(shè)計(jì)器、菜單設(shè)計(jì)器、數(shù)據(jù)環(huán)境設(shè)計(jì)器、連接設(shè)計(jì)器2打開Visual FoxPro設(shè)計(jì)器1.6.3Visual FoxPro的生成器各種生成器:表單生成器、表格生成器、編輯框生成器、列表框生成器、文本框生成器、組合框生成器、命令按鈕組生成器、選項(xiàng)按鈕組生成器1. 啟動“表單生成器”2. 對表單中的控件使用相應(yīng)的生成器3. 使用自動格式生成器來設(shè)置控制格式4. 使用參照完整性生成器本章小結(jié):本章首先介紹了數(shù)據(jù)庫系統(tǒng)的有關(guān)概念、數(shù)據(jù)庫管理系統(tǒng)的功能,然后介紹了VF6.0的初步知識,包括其用戶界面、工具欄的使用和系統(tǒng)配置。通過本章的學(xué)習(xí)希望對數(shù)據(jù)庫的相關(guān)知識有所了解,同時(shí)也對VF6.0有初步的認(rèn)識,為后面的進(jìn)一步學(xué)習(xí)打下基礎(chǔ)。本章作業(yè):1數(shù)據(jù)庫管理員的職責(zé)包括哪些方面?2簡述數(shù)據(jù)庫系統(tǒng)的特點(diǎn)。3. 簡述關(guān)系的特點(diǎn)。4. 數(shù)據(jù)庫有哪些設(shè)計(jì)原則。5. 簡述數(shù)據(jù)庫的設(shè)計(jì)步驟。6. 創(chuàng)建項(xiàng)目的方法有哪些?教學(xué)后記:第2章 VF程序設(shè)計(jì)基礎(chǔ)本章重點(diǎn)與學(xué)習(xí)目標(biāo):v 掌握VF常用數(shù)據(jù)類型 字符型、數(shù)值型、浮點(diǎn)型、雙精度、整型等v 掌握VF常量、變量的定義與使用方法及運(yùn)算符和表達(dá)式 常量類型、變量類型及使用 VF運(yùn)算符及優(yōu)先級、VF各種表達(dá)式v 了解VF程序設(shè)計(jì)基本知識及基本程序結(jié)構(gòu) 程序文件的建立與編輯和程序的調(diào)用方法 程序的三種結(jié)構(gòu):順序結(jié)構(gòu)、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)v 掌握VF的過程與函數(shù)的定義及運(yùn)用方法 子過程與過程的定義及操作 自定義函數(shù)的運(yùn)用v 掌握變量的作用域與參數(shù)的傳遞 VF變量的作用域 VF參數(shù)的傳遞教學(xué)器材:多媒體教學(xué)本章課時(shí):7學(xué)時(shí)2.1 常量與變量VF主要數(shù)據(jù)類型有:字符型、數(shù)值型、貨幣型、日期型、日期時(shí)間型、邏輯型、備注型、通用型。2.1.1 常量常量是指在所有的操作過程中保持不變的數(shù)。VF主要有:數(shù)值型常量、貨幣型常量、字符型常量、日期型常量、日期時(shí)間型常量和邏輯型常量。2.1.2 變量變量是能夠隨時(shí)更改的。每個(gè)變量有一個(gè)變量名。命名規(guī)則:變量名以字母,漢字和下劃線開頭,后接字母、數(shù)字、漢字和下劃線構(gòu)成。VF變量分為字段變量和內(nèi)存變量數(shù)組:與內(nèi)存變量不同,數(shù)組在使用之前一般要DIMENSION或DECLARE命令顯式創(chuàng)建,并且規(guī)定數(shù)組是一維數(shù)組還是二維數(shù)組,數(shù)組名和數(shù)組大小。數(shù)組創(chuàng)建數(shù)組的格式:DIMENSION ( ,) ,DECLARE ( ,) ,2.1.3 內(nèi)存變量常用命令1. 內(nèi)存變量的賦值格式1 :STORE TO格式2:=2. 表達(dá)式的顯示格式1 :?格式2:?3顯示內(nèi)存變量格式1: LIST MEMORYLIKETO PRINTER|TO FILE2: DISPLAY MEMORYLIKETO PRINTER|TO FILE4清除內(nèi)存變量格式1 :CLEAR MEMORY格式2:RELEASE格式3 :RELEASE ALL EXTENDED格式4:RELEASE ALL LIKE| EXCEPT5表與數(shù)組之間的數(shù)據(jù)傳遞將表的當(dāng)前記錄復(fù)制到數(shù)組格式1 :SCATTER FIELDS MEMO TO BLANK 格式2:SCATTER FIELDS LIKE|FIELDS EXCEPT MEMO TO BLANK 2.2 表達(dá)式表達(dá)式是由常量、變量和函數(shù)通過特定的運(yùn)算符連接起來的式子。2.2.1 數(shù)值、字符與日期時(shí)間表達(dá)式數(shù)值表達(dá)式又叫做算術(shù)表達(dá)式,是最容易理解的一種表達(dá)式。數(shù)值型數(shù)據(jù)可以是數(shù)值型常量或者變量。運(yùn)算符包括:()、*或、*、/、%、+、-2.2.2 關(guān)系表達(dá)式稱為簡單邏輯表達(dá)式,它由關(guān)系運(yùn)算符將兩個(gè)運(yùn)算對象連接起來形成。運(yùn)算符包括:、=、=、=、或#或!=、$2.2.3 邏輯表達(dá)式由邏輯運(yùn)算符將邏輯型數(shù)據(jù)連接形成的,其運(yùn)算符結(jié)果仍然是邏輯數(shù)據(jù)。運(yùn)算符包括:.NOT.或!(邏輯非)、.AND.(邏輯與)和.OR.(邏輯或)。2.2.4 運(yùn)算符優(yōu)先級表達(dá)式中出現(xiàn)了多種不同類型的運(yùn)算符時(shí),其運(yùn)算符優(yōu)先級如下:算術(shù)運(yùn)算符字符運(yùn)算符和日期時(shí)間運(yùn)算符關(guān)系運(yùn)算符邏輯運(yùn)算??梢杂美ㄌ柛淖儍?yōu)先順序,強(qiáng)令表達(dá)式的某些部分優(yōu)先運(yùn)行。括號內(nèi)的運(yùn)算總是優(yōu)先于括號外的運(yùn)算。對于多重括號,總是由內(nèi)到外。 2.3 常用函數(shù)2.3.1 數(shù)值函數(shù) 常用數(shù)值函數(shù)有:ABS()函數(shù)、SIGN()函數(shù)、SQRT()函數(shù)、PI()函數(shù)、INT()函數(shù)、CEILING()函數(shù)、FLOOR()函數(shù)、ROUND()函數(shù)、MOD()函數(shù)、MAX()函數(shù)2.3.2 字符函數(shù)常用字符函數(shù)有:LEN()函數(shù)、LOWER()函數(shù)、UPPER()函數(shù)、SPACE()函數(shù)、TRIM()函數(shù)、LTRIM()函數(shù)、ALLTRIM()函數(shù)、LEFT()函數(shù)、 RIGHT()函數(shù)、SUBSTR()函數(shù)、OCCURS()函數(shù)、AT()函數(shù)、ATC()函數(shù)、STUFF()函數(shù)、CHRTRAN ()函數(shù)、LIKE()函數(shù)2.3.3 日期和時(shí)間函數(shù)常用日期和時(shí)間函數(shù)有:DATE()函數(shù)、TIME()函數(shù)、DATETIME()函數(shù)、YEAR()函數(shù)、MONTH()函數(shù)、DAY()函數(shù)、HOUR()函數(shù)、MINUTE()函數(shù)、SEC()函數(shù)2.3.4 數(shù)據(jù)類型轉(zhuǎn)換函數(shù)常用數(shù)據(jù)類型轉(zhuǎn)換函數(shù)有:STR()函數(shù)、VAL()函數(shù)、CTOD()函數(shù)、CTOT()函數(shù)、DTOC()函數(shù)、TTOC()函數(shù)、宏替換函數(shù)2.3.5 測試函數(shù)常用測試函數(shù)有:BETWEEN()函數(shù)、ISNULL()函數(shù)、EMPTY()函數(shù)、VARTYPE()函數(shù)、EOF()函數(shù)、BOF()函數(shù)、RECNO()函數(shù)、RECCOUNT()函數(shù)、IIF()函數(shù)、DELETED()函數(shù)2.4 程序與程序文件2.4.1 程序的概念定義:程序是能夠完成一定任務(wù)的命令的有序集合。這組命令被存放在稱為程序文件或命令文件的文本文件中。程序中經(jīng)常插入注釋,以提高程序的可讀性。注釋為非執(zhí)行代碼,不會影響程序的功能。注釋方式:NOTE或*,以NOTE或*開頭的代碼行為注釋行,一般用于對下面一段命令的說明。&,命令行后可添加注釋,對所在行命令的說明。2.4.2 程序文件的建立與執(zhí)行1程序文件的建立2打開、修改程序文件3執(zhí)行程序文件 2.4.3 簡單的輸入/輸出/命令1INPUT命令: INPUT TO 2ACCEPT命令:ACCEPT TO 3WAIT命令:WAIT TO WINDOW AT ,NOWAIT CLEAR | NOCLEAR TIMEOUT 2.5 程序的基本結(jié)構(gòu)2.5.1 選擇結(jié)構(gòu)1. 簡單形式的條件語句 IF ENDIF2. 一般形式的條件語句IF ELSE ENDIF3. 多分支語句DO CASECASE CASE CASE OTHERWISE ENDCASE2.5.2 循環(huán)結(jié)構(gòu)1DO WHILE-ENDDO語句DO WHILE LOOP EXITENDDO2. FOR語句FOR = to step EXIT LOOPENDFOR|NEXT3. SCAN-ENDSCAN語句SCAN FOR WHILE LOOP EXITENDSCAN2.6 多模塊程序設(shè)計(jì)模塊是一個(gè)相對獨(dú)立的程序段,它可以被其他模塊所調(diào)用,也可以去調(diào)用其他的模塊。通常,把被其他模塊調(diào)用的模塊稱為子程序,把調(diào)用其他模塊而沒有被其他模塊調(diào)用的模塊稱為主程序。2.6.1 模塊的定義和調(diào)用1模塊的定義:模塊可以是命令文件,也可以是過程。語法格式:PROCEDURE | FUNCTION RETURNENDPROC打開過程文件的命令格式:SET PROCEDURE TO, 關(guān)閉過程文件的命令格式: 格式1: SET PROCEDURE TO 功能:關(guān)閉所有打開的過程文件 格式2:RELEASE PROCEDURE ,2. 模塊調(diào)用格式1:DO 格式2:()2.6.2 參數(shù)傳遞1PARAMETERS和LPARMETERS語句傳遞參數(shù)PARMETERS,LPARMETERS ,2調(diào)用模塊程序格式1:DO WITH,格式2:DO (,)2.6.3 變量的作用域1變量的作用域:指變量在什么范圍內(nèi)是有效的或者能夠被訪問的。內(nèi)存變量分類:公共變量、私有變量、局部變量2變量的隱藏開發(fā)應(yīng)用程序時(shí),主程序與子程序不一定是由同一個(gè)人來設(shè)計(jì)的,子程序中用到的變量實(shí)際上在主程序中已經(jīng)建立,子程序的運(yùn)行會無意間改變主程序中變量的取值。為了解決這個(gè)問題,可以采用在子程序中使用PRIVATE命令隱藏主程序中可能存在的變量,使得這些變量在子程序中暫時(shí)無效。格式:PRIVATE PRIVATE ALLLIKE|EXCEPT本章小結(jié): 本章主開始先介紹了語言的一些基本成分,包括常量、變量、函數(shù)和表達(dá)式,同時(shí)也介紹了一些相關(guān)的命令,在后半部分主要介紹了程序設(shè)計(jì)的基本內(nèi)容,包括程序的概念、程序的基本結(jié)構(gòu)、多模塊程序設(shè)計(jì)等。通過本章的學(xué)習(xí)要求同學(xué)們對程序設(shè)計(jì)有初步的了解,并且能編寫小的算法程序來進(jìn)行特定的數(shù)據(jù)處理。本章作業(yè): 上機(jī)練習(xí)課后習(xí)題三教學(xué)后記:第3章 VF數(shù)據(jù)庫及操作本章重點(diǎn)與學(xué)習(xí)目標(biāo):v 了解VF項(xiàng)目管理器v 熟悉VF數(shù)據(jù)庫 數(shù)據(jù)庫的創(chuàng)建方法 數(shù)據(jù)庫的應(yīng)用 數(shù)據(jù)庫的修改 數(shù)據(jù)庫的刪除v 掌握VF數(shù)據(jù)庫表的相關(guān)操作 數(shù)據(jù)庫表、自由表的創(chuàng)建 表結(jié)構(gòu)的修改 數(shù)據(jù)庫表的關(guān)閉與打開 數(shù)據(jù)庫表的基本操作v 掌握數(shù)據(jù)庫表索引 索引的類型 索引的建立v 了解數(shù)據(jù)完整性相關(guān)概念教學(xué)器材:多媒體教學(xué) 教學(xué)課時(shí):4學(xué)時(shí)3.1 Visual FoxPro數(shù)據(jù)庫及其建立3.1.1 基本概念數(shù)據(jù)庫:數(shù)據(jù)庫是一個(gè)邏輯上的概念和手段,通過一組系統(tǒng)文件將相互關(guān)聯(lián)的數(shù)據(jù)庫表及其相關(guān)的數(shù)據(jù)庫對象統(tǒng)一組織和管理。3.1.2 建立數(shù)據(jù)庫常用方法:(1) 使用項(xiàng)目管理器中建立數(shù)據(jù)庫(2) 使用“新建”對話框建立數(shù)據(jù)庫(3) 使用命令方式建立數(shù)據(jù)庫格式:CREATE DATABASEDatabasename|?3.1.3 使用數(shù)據(jù)庫常用方法:(1) 在“項(xiàng)目管理器”中打開數(shù)據(jù)庫(2) 通過“打開”對話框打開數(shù)據(jù)庫(3) 使用命令方式打開數(shù)據(jù)庫格式:OPEN DATABASE3.1.4 修改數(shù)據(jù)庫常用方式:(1) 從項(xiàng)目管理器中打開數(shù)據(jù)庫設(shè)計(jì)器(2) 用“打開”對話框打開數(shù)據(jù)庫設(shè)計(jì)器3.1.5 刪除數(shù)據(jù)庫常用方法: (1) 使用項(xiàng)目管理器刪除數(shù)據(jù)庫(2) 使用命令方式刪除數(shù)據(jù)庫格式:DELETE DATABASE DatabaseName|? DELETETABLES RECYCLE3.2 建立數(shù)據(jù)庫表3.2.1 在數(shù)據(jù)庫中建立表方法:(1) 使用項(xiàng)目管理器建立數(shù)據(jù)庫表(2) 使用“新建”或CREATE命令建立數(shù)據(jù)庫表3.2.2 修改表結(jié)構(gòu)方法:(1) 在“項(xiàng)目管理器”中修改表結(jié)構(gòu)(2) 在“數(shù)據(jù)庫設(shè)計(jì)器”中修改表結(jié)構(gòu)(3) 使用命令修改表結(jié)構(gòu)如果當(dāng)前不在數(shù)據(jù)庫設(shè)計(jì)器中,則首先要用USE命令打開要修改的表,然后使用命令方式MODIFY STRUCTURE打開表設(shè)計(jì)器。3.3 表的基本操作3.3.1 使用瀏覽器操作表方法:(1) 在項(xiàng)目管理器中將數(shù)據(jù)庫展開至表,并且選擇要操作的表,然后單擊“瀏覽”命令按鈕即可。(2) 在數(shù)據(jù)庫設(shè)計(jì)器中選擇要操作的表,然后從“數(shù)據(jù)庫”菜單中 選擇“瀏覽”,或者對要操作的表單擊鼠標(biāo)右鍵,然后從快捷菜單中選擇“瀏覽”。(3) 在命令窗口中,用USE命令打開要操作的表,然后輸入BROWSE 命令來瀏覽表。3.3.2 增加記錄的命令A(yù)PPEND命令: APPEND命令是在表的尾部增加一個(gè)或多個(gè)新記錄。格式:APPEND或APPEND BLANKINSERT命令: INSERT命令可以在表的任意位置插入新的記錄。格式:INSERT BEFOREBLANK3.3.3 刪除記錄的命令邏輯刪除: DELETE FOR恢復(fù)記錄的命令: RECALL FOR物理刪除有刪除標(biāo)記的記錄: PACK 物理刪除表中的全部記錄: ZAP3.3.4 修改記錄的命令EDIT或CHANGE命令交互修改:這兩個(gè)命令均用于交互式地對當(dāng)前表記錄進(jìn)行編輯、修改,操作界面類似于APPEND界面。修改后用CTRL+W或ESC退出界面REPLACE命令直接修改: REPLACE 字段名1 WITH 表達(dá)式1 ,字段名2 WITH 表達(dá)式2 FOR 表達(dá)式3.3.5 顯示記錄的命令LIST/DISPLAY命令: LIST/DISPLAY FIELDS Fiedlist FOR lExpression1 OFF TO PRINTER PROMPT | TO FILE FileName3.3.6 查詢定位命令用GO、GOTO命令直接定位: GO 記錄號 TOP | BOTTOMSKIP命令: SKIP nRecords用LOCATE命令定位: LOCATE FOR 條件表達(dá)式3.4 索引3.4.1 基本概念定義:VFP索引是指由指針構(gòu)成的文件,這些指針邏輯上按照索引關(guān)鍵字的值進(jìn)行排序。分類:主索引、候選索、唯一索引、普通索引3.4.2 在設(shè)計(jì)器中建立索引1單項(xiàng)索引2復(fù)合字段索引:在多個(gè)字段上的索引稱做復(fù)合字段索引。3索引文件的種類:非結(jié)構(gòu)單索引文件、非結(jié)構(gòu)復(fù)合索引文件、結(jié)構(gòu)復(fù)合索引文件3.4.3 用命令建立索引命令:INDEX ON eExpression TO IDXFileName|TAG TagName OF CDXFileName FOR lExpresssionCOMPACT ASCENDING|DESCENDING UNIQUE|CANDIDATE ADDITIVE3.4.4 使用索引命令格式:SET ORDER TO nIndexNumber | TAG TagName ASCENDING|DESCENDING3.4.5 使用索引快速定位Seek命令格式:SEEK eExpression ORDER nIndexNumber | TAG TagName ASCENDING|DESCENDING3.4.6 刪除索引格式1:DELETE TAG TagName1格式2:DELETE TAG ALL 3.5 數(shù)據(jù)完整性3.5.1 實(shí)體完整性與主關(guān)鍵字實(shí)體完整性是保證表中記錄唯一的特性,在VFP中利用主關(guān)鍵字和候選索引字來保證表中記錄的惟一性,即實(shí)體惟一性。3.5.2 域完整性與約束規(guī)則域完整性:通過限定字段的取值類型和取值范圍來保證域完整性,還可以進(jìn)一步通過域約束規(guī)則來保證域完整性。約束規(guī)則也稱作字段有效性規(guī)則,用于檢驗(yàn)輸入數(shù)據(jù)的正確性。3.5.3 參照完整性與表之間的聯(lián)系建立參照完整性: (1) 建立表之間的“永久聯(lián)系”。(2) 設(shè)置參照完整性約束。3.6 自由表3.6.1 數(shù)據(jù)庫表與自由表創(chuàng)建自由表: (1) 使用項(xiàng)目管理器創(chuàng)建自由表(2) 利用菜單方式創(chuàng)建自由表(3) 利用命令窗口的create命令創(chuàng)建自由表3.6.2 將自由表添加到數(shù)據(jù)庫方法:(1) 使用項(xiàng)目管理器添加自由表(2) 使用數(shù)據(jù)庫設(shè)計(jì)器添加自由表(3) 利用窗口命令添加自由表3.6.3 從數(shù)據(jù)庫中移出表方法:(1) 使用項(xiàng)目管理器移出表(2) 使用數(shù)據(jù)庫設(shè)計(jì)器移出表(3) 利用命令窗口方式移去表3.7 多個(gè)表的同時(shí)使用3.7.1 多個(gè)工作區(qū)的概念多工作區(qū): VF中在一個(gè)工作區(qū)中可以使用一個(gè)表,如果在同一時(shí)刻需要打開多個(gè)表,則只需要在不同的工作區(qū)中打開不同的表。系統(tǒng)默認(rèn)的總是在第1個(gè)工作區(qū)中工作,如果沒有指定工作區(qū),實(shí)際是都是在第1個(gè)工作區(qū)打開表和操作表。利用命令窗口選擇工作區(qū): SELECT nWorkAreca | cTabeleAlias3.7.2 使用不同工作區(qū)的表Visual FoxPro也允許利用IN 命令在一個(gè)工作區(qū)內(nèi)使用另一個(gè)工作區(qū)的表。即命令: In nWorkAreca | cTabeleAlias3.7.3 表之間的聯(lián)系建立臨時(shí)關(guān)聯(lián):SET RELATION TO eExpression1 INTO nWorkAreca | cTabeleAlias3.8 排序排序是將記錄按需要的順序重新排列,產(chǎn)生一個(gè)新的數(shù)據(jù)庫文件,實(shí)現(xiàn)從物理上對數(shù)據(jù)庫的重新排列。物理排序: SORT TO TableName ON FieldName1/A | /D /C , FieldName2 /A | /D /C ASCENDING | DESCENDING FOR lExpression1 FIELDS FieldNamelist 本章小結(jié) 本章主要介紹了VF數(shù)據(jù)庫相關(guān)概念與操作,數(shù)據(jù)庫表的創(chuàng)建與基本操作,表索引的創(chuàng)建。通過本章的學(xué)習(xí)要求掌握數(shù)據(jù)庫的基本操作,表的建立與結(jié)構(gòu)的設(shè)置,索引的建立方法,了解數(shù)據(jù)的完整約束。本章作業(yè):上機(jī)聯(lián)系課后習(xí)題三教學(xué)后記:第4章 關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言SQL本章重點(diǎn)與學(xué)習(xí)目標(biāo):v SQL語言概述 了解SQL語言的相關(guān)知識 掌握SELECT語句的使用方法v 查詢功能 掌握SELECT語句的使用方法 了解使用謂詞和量詞的復(fù)雜查詢語句v 操作和定義功能 掌握插入、更新和刪除等操作語句 掌握表的定義、刪除和結(jié)構(gòu)修改等定義語句 掌握視圖的定義方法教學(xué)器材:多媒體教學(xué) 教學(xué)課時(shí):8學(xué)時(shí)4.1 SQL概述SQL定義:SQL(Structured Query Language)是一種非過程化的語言,也是結(jié)構(gòu)化查詢語言的縮寫,是關(guān)系數(shù)據(jù)庫的標(biāo)準(zhǔn)語言。4.2 查詢功能SQL的核心是查詢,SQL的查詢命令也稱SELECT命令,它提供了簡單而又豐富的SELECT數(shù)據(jù)查詢語句。語法格式:SELECT ALL | DISTINCT TOP nExpr PERCENTAlias. Select_Item AS Column_Name,Alias. Select_Item AS Column_NameFROM FORCEDatabaseName! Table AS Local_AliasINNER |LEFT OUTER | RIGHT OUTER | FULL OUTER JOINDatabaseName! Table AS Local_AliasON JoinConditionINTO DestinationTO FILE FileName ADDITIVE | TO PRINTER PROMPT| TO SCREENPREFERENCE PreferenceNameNOCONSOLEPLAINNOWAIT WHERE JoinCondition AND JoinConditionAND |OR FilterCondition AND | OR FilterConditionGROUP BY GroupColumn ,GroupColumnHAVING FilterConditionUNION ALL SELECTCommandORDER BY Order_Item ASC | DESC,Order_Item ASC | DESC4.2.1 簡單查詢定義:簡單查詢是針對單個(gè)表的查詢,由SELECT和FROM短語構(gòu)成無條件查詢或由SELECT、FROM和WHERE短語構(gòu)成條件查詢。舉例:課本例4.14.54.2.2 簡單的連接查詢定義:簡單聯(lián)接查詢也是一類基于多個(gè)表的查詢,與嵌套查詢的區(qū)別是要查詢的結(jié)果可以出自多個(gè)表中,而嵌套查詢的結(jié)果是基于一個(gè)表中。舉例:課本例4.6與例4.74.2.3 嵌套查詢定義:嵌套查詢基于多個(gè)關(guān)系的查詢,查詢的結(jié)果是來自一個(gè)表,而查詢的條件卻涉及到多個(gè)表。舉例:課本例4.8、4.9與例4.104.2.4 幾個(gè)特殊運(yùn)算符運(yùn)算符:LIKE和 between and舉例:課本例4.11、4.12與例4.134.2.5 排序格式:ORDER BY Order_Item ASC | DESC,Order_Item ASC |DESC舉例:課本例4.14與例4.154.2.6 簡單的計(jì)算查詢字段函數(shù):COUNT、SUM、AVG、MAX、MIN舉例:課本例4.164.204.2.7 分組與計(jì)算查詢格式:GROUP BY GroupColumn , GroupColumn HAVING FilterCondition舉例:課本例4.21與例4.224.2.8 利用空值查詢空值:NULL值舉例:課本例4.23與例4.244.2.9 別名與自連接查詢格式:舉例:課本例4.254.2.10 內(nèi)外層互相關(guān)嵌套查詢前面討論的都是外層查詢依賴于內(nèi)層查詢的結(jié)果,實(shí)際上,有時(shí)也需要內(nèi)、外層互相關(guān)的查詢,這是內(nèi)層查詢的條件需要外層查詢提供值,而外層查詢的條件需要內(nèi)層查詢的結(jié)果。舉例:課本例4.264.2.11 使用量詞和謂詞的查詢格式說明: ANY | ALL |SOME (子查詢)和NOT EXISTS(子查詢)舉例:課本例4.274.304.2.12 超連接查詢分類:左聯(lián)接、右聯(lián)接、完全聯(lián)接命令格式:SELECTFROM Table INNER | LEFT | RIGHT | FULL JOIN Table ON JoinCondition WHERE舉例:課本例4.314.344.2.13 集合的并運(yùn)算定義:并運(yùn)算是將兩個(gè)SELECT語句的查詢結(jié)果合并成一個(gè)查詢結(jié)果。運(yùn)算符:UNION 4.2.14 VF SQL SELECT的幾個(gè)特殊選項(xiàng)1顯示部分結(jié)果2將查詢結(jié)果放到數(shù)組中3將查詢結(jié)果放到臨時(shí)文件中4將查詢結(jié)果存放到永久表中 5將查詢結(jié)果存放到文本文件中6將查詢結(jié)果直接輸出到打印機(jī)舉例:課本例4.35、4.364.3 操作功能4.3.1 插入數(shù)據(jù)格式一:INSERT INTO dbf_name(fname1,fname2,) VALUES (eExpression1,eExpession2,)格式二:INSERT INTO dbf_name from ARRAY ArrayName | from memvar4.3.2 更新數(shù)據(jù)格式:UPDATE TableName set Column_Name1=eExpession1 ,Column_Name2=eExpession2 where condition4.3.3 刪除數(shù)據(jù)格式:delete from TableName where condition4.4 定義功能4.4.1 表的定義通過create table命令來建立表,格式為: create table | DBF TableName1 NAME LongTableName FREE (FieldName1 FieldType(nFieldWidth ,nPrecision) NULL|NOT NULL CHECK lExpession1 ERROR cMessageText1 DEFAULT eExpession1 PRIMARY KEY | UNIQUE REFERENCES TableName2 TAG TagName1 NOCPTANS , FieldName2 , PRIMARY KEY eExpression2 TAG TagName2 |, UNIQUE eExpession3 TAG TagName3 , FOREIGN KEY eExpression4 TAG TagName4 NODUP REFERENCES TableName3 TAG TagName5 , CHECK lExpression2 ERROR cMessageText2) | FROM ARRAY ArrayName4.4.2 表的刪除命令為:DROP TABLE table_name 直接從數(shù)據(jù)庫刪除表對應(yīng)的文件。如果是數(shù)據(jù)庫中的表并且相應(yīng)的數(shù)據(jù)庫是當(dāng)前數(shù)據(jù)庫,則從數(shù)據(jù)庫中刪除了表,否則雖然從磁盤上刪除了表文件,但是在數(shù)據(jù)庫中的信息卻沒有刪除,此后會出現(xiàn)錯(cuò)誤提示。4.4.3 表結(jié)構(gòu)的修改用三種命令格式,格式1為:ALTER TABLE TableName1 ADD | ALTER COLUMN FieldName1 FieldType (nFieldWidth , nPrecision ) NULL | NOT NULL CHECK lExpression1 ERROR cMessageText1 DEFAULT eExpression1 PRIMAY KEY | UNIQUE REFEENCES TableName2 TAG TagName1格式2為: ALTER TABLE TableName1 ALTER COLUMN FieldName2 NULL|NOT NULL SET DEFAULT eExpression2 SET CHECK lExpression2 ERROR cMessageText2 DOP DEFAULT DROP CHECK格式3: ALTER TABLE TableName1 DROP COLUMN FieldName3 SET CHECK lExpression3 ERROR cMessageText3 DROP CHECK ADD PRIMARY KEY eExpression3 TAG TagName2 FOR lExpression4 DROP PRIMARY KEY ADD UNIQUE eExpression4 TAG TagName3 FOR lExpression5 DROP UNIQUE TAG TagName4 ADD FOREING KEY eExpression5 TAG TagName4
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 保險(xiǎn)合同 拆解協(xié)議書范本
- 飯店生意轉(zhuǎn)讓合同協(xié)議書
- JAVA電子商務(wù)系統(tǒng)設(shè)計(jì)中的編程考察試題及答案
- 購貨解除合同協(xié)議書
- 計(jì)劃中用戶需求的重要性試題及答案
- 送餐員合同協(xié)議書
- MySQL字段約束應(yīng)用試題及答案
- 果蔬物流合同協(xié)議書
- 西南醫(yī)科大學(xué)附屬醫(yī)院招聘考試真題2024
- 二級Web項(xiàng)目案例分享試題及答案
- 2025團(tuán)員考試試題及答案
- 2025年軟件測試工程師考試題及答案
- 血管內(nèi)導(dǎo)管相關(guān)性血流感染預(yù)防與診治指南(2025)解讀課件
- 2025年高考數(shù)學(xué)考前最后一課
- 茶葉加工考試題及答案
- 2025 中小學(xué)征訂教輔謀利問題整治工作自查報(bào)告
- 江蘇省南通市海門市海門中學(xué)2025屆高考物理四模試卷含解析
- 2025年中考物理模擬考試卷(帶答案)
- 希沃白板5培訓(xùn)知識點(diǎn)
- deepseek的使用技巧與實(shí)際應(yīng)用培訓(xùn)課件
- 污水處理站設(shè)備采購及配套方案(技術(shù)標(biāo))
評論
0/150
提交評論