欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      全國計(jì)算機(jī)等級(jí)考試二級(jí)VF考點(diǎn)分析

      時(shí)間:2019-05-14 08:56:48下載本文作者:會(huì)員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《全國計(jì)算機(jī)等級(jí)考試二級(jí)VF考點(diǎn)分析》,但愿對你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《全國計(jì)算機(jī)等級(jí)考試二級(jí)VF考點(diǎn)分析》。

      第一篇:全國計(jì)算機(jī)等級(jí)考試二級(jí)VF考點(diǎn)分析

      全國計(jì)算機(jī)等級(jí)考試二級(jí)VF考點(diǎn)分析之VF基礎(chǔ)(第一章)1.1 數(shù)據(jù)庫基礎(chǔ)知識(shí) 考點(diǎn)1 計(jì)算機(jī)數(shù)據(jù)管理的發(fā)展

      1數(shù)據(jù)與數(shù)據(jù)處理

      數(shù)據(jù)是指存儲(chǔ)在某一種媒體上能夠識(shí)別的物理符號(hào)。數(shù)據(jù)處理的中心問題是數(shù)據(jù)管理。

      2計(jì)算機(jī)數(shù)據(jù)管理

      (l)人工管理。

      (2)文件系統(tǒng)。

      (3)數(shù)據(jù)庫系統(tǒng)。

      (4)分布式數(shù)據(jù)庫系統(tǒng)。

      (5)面向?qū)ο髷?shù)據(jù)庫系統(tǒng)。

      3數(shù)據(jù)庫管理系統(tǒng)

      為數(shù)據(jù)庫的建立、使用和維護(hù)而配置的軟件稱為數(shù)據(jù)庫管理系統(tǒng)DBMS(DataBase Management System)。

      圖1-1 數(shù)據(jù)庫系統(tǒng)中數(shù)據(jù)與程序的關(guān)系 考點(diǎn)2 數(shù)據(jù)庫系統(tǒng)

      1有關(guān)數(shù)據(jù)庫的概念

      (1)數(shù)據(jù)庫(DataBase):存儲(chǔ)在計(jì)算機(jī)存儲(chǔ)設(shè)備上、結(jié)構(gòu)化的相關(guān)數(shù)據(jù)的集合。

      (2)數(shù)據(jù)庫應(yīng)用系統(tǒng)(DBAS):是由系統(tǒng)開發(fā)人員利用數(shù)據(jù)庫系統(tǒng)資源開發(fā)出來的,面向某一類實(shí)際應(yīng)用的應(yīng)用軟件系統(tǒng)。

      (3)數(shù)據(jù)庫管理系統(tǒng)(DBMS):對數(shù)據(jù)實(shí)行專門管理,提供安全性和完整性等統(tǒng)一機(jī)制,可以對數(shù)據(jù)庫的建立、使用和維護(hù)進(jìn)行管理。

      (4)數(shù)據(jù)庫系統(tǒng)(DBS):是指引進(jìn)數(shù)據(jù)庫技術(shù)后的計(jì)算機(jī)系統(tǒng),實(shí)現(xiàn)有組織地、動(dòng)態(tài)地存儲(chǔ)大量相關(guān)數(shù)據(jù),提供數(shù)據(jù)處理和信息資源共享的便利手段。數(shù)據(jù)庫系統(tǒng)由硬件系統(tǒng)、數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)及相關(guān)軟件、數(shù)據(jù)庫管理員和用戶等部分組成。

      2數(shù)據(jù)庫系統(tǒng)的特點(diǎn)

      (l)實(shí)現(xiàn)數(shù)據(jù)共享,減少數(shù)據(jù)冗余。

      (2)采用特定的數(shù)據(jù)模型。

      (3)具有較高的數(shù)據(jù)獨(dú)立性。

      (4)具有統(tǒng)一的數(shù)據(jù)控制功能??键c(diǎn)3 數(shù)據(jù)模型

      1實(shí)體的描述

      (1)實(shí)體。

      (2)實(shí)體的屬性。

      (3)實(shí)體集和實(shí)體型。

      2實(shí)體間聯(lián)系及聯(lián)系的種類

      (1)一對一聯(lián)系。

      (2)一對多聯(lián)系。

      (3)多對多聯(lián)系。

      3數(shù)據(jù)模型簡介

      為了反映事物本身及事物之間的各種聯(lián)系,數(shù)據(jù)庫中的數(shù)據(jù)必須有一定的結(jié)構(gòu),這種結(jié)構(gòu)用數(shù)據(jù)模型來表示,通常有以下3種。

      (1)層次數(shù)據(jù)模型。

      (2)網(wǎng)狀數(shù)據(jù)模型。

      (3)關(guān)系數(shù)據(jù)模型。小提示:

      數(shù)據(jù)庫DB、數(shù)據(jù)庫系統(tǒng)DBS和數(shù)據(jù)庫管理系統(tǒng)DBMS之間的關(guān)系是DBS包括DB和DBMS。1.2 關(guān)系模型

      關(guān)系模型的用戶界面非常簡單,一個(gè)關(guān)系的邏輯結(jié)構(gòu)就是一張二維表。這種用二維表的形式表示實(shí)體和實(shí)體間聯(lián)系的數(shù)據(jù)模型稱為關(guān)系數(shù)據(jù)模型。

      1關(guān)系術(shù)語

      (l)關(guān)系:一個(gè)關(guān)系就是一張二維表,每個(gè)關(guān)系有一個(gè)關(guān)系名。在Visual FoxPro中一個(gè)關(guān)系存儲(chǔ)為一個(gè)文件,擴(kuò)展名為DBF,稱為“表”。

      對關(guān)系的描述稱為關(guān)系模式,一個(gè)關(guān)系模式對應(yīng)一個(gè)關(guān)系的結(jié)構(gòu),格式為:

      關(guān)系名(屬性名1,屬性名2,?,屬性名n)

      (2)元組:在一個(gè)二維表中,水平方向的行稱為元組,每一行為一個(gè)元組。

      (3)屬性:將二維表中垂直方向的列稱為屬性,每一列都有一個(gè)屬性名。

      (4)域:屬性的取值范圍,即不同元組對同一個(gè)屬性的取值所限定的范圍。

      (5)關(guān)鍵字:屬性或?qū)傩缘慕M合,其值能夠唯一地標(biāo)識(shí)一個(gè)元組。在Visual FoxPro中,主關(guān)鍵字和候選關(guān)鍵字就起唯一標(biāo)志一個(gè)元組的作用。

      (6)外部關(guān)鍵字:如果表中一個(gè)字段不是本表的主關(guān)鍵字或候選關(guān)鍵字,而是另一個(gè)表的主關(guān)鍵字或候選關(guān)鍵字,那么這個(gè)字段(屬性)就稱為外部關(guān)鍵字。

      2關(guān)系的特點(diǎn)

      (1)關(guān)系必須規(guī)范化。

      (2)在同一個(gè)關(guān)系中不能出現(xiàn)同名屬性,Visual FoxPro中表示為字段名的不同。

      (3)關(guān)系中不允許有完全相同的元組,即冗余。

      (4)在一個(gè)關(guān)系中元組的次序無關(guān)緊要。

      (5)在一個(gè)關(guān)系中列的次序無關(guān)緊要??键c(diǎn)5 關(guān)系運(yùn)算

      對關(guān)系數(shù)據(jù)庫進(jìn)行查詢時(shí),需要找到用戶感興趣的數(shù)據(jù),這就需要對關(guān)系進(jìn)行一定的關(guān)系運(yùn)算,關(guān)系的基本運(yùn)算有兩類:傳統(tǒng)的集合運(yùn)算和專門的關(guān)系運(yùn)算。

      1傳統(tǒng)的集合運(yùn)算

      (1)并:兩個(gè)相同結(jié)構(gòu)關(guān)系的并是由屬于這兩個(gè)關(guān)系的全部元組組成的集合。

      (2)差:兩個(gè)相同結(jié)構(gòu)關(guān)系的差是由屬于前一個(gè)關(guān)系的元組而不屬于后一個(gè)關(guān)系的元組組成的集合。例如,關(guān)系R和S的差結(jié)果是由屬于R但不屬于S的元組組成的集合。

      (3)交:兩個(gè)相同結(jié)構(gòu)關(guān)系的交是由屬于這兩個(gè)關(guān)系所共有的元組組成的集合。

      2專門的關(guān)系運(yùn)算

      (1)選擇:從關(guān)系中找出滿足給定條件的元組的操作。

      (2)投影:從關(guān)系模式中指定若干個(gè)屬性組成新的關(guān)系:

      (3)連接:關(guān)系的橫向結(jié)合,將兩個(gè)關(guān)系模式拼接成一個(gè)更寬的關(guān)系模式。

      (4)自然連接:在連接運(yùn)算中,按照字段值對應(yīng)相等為條件進(jìn)行的連接操作稱為等值連接。自然連接是去掉重復(fù)屬性的等值連接。小提示:

      選擇和投影運(yùn)算的操作對象只是一個(gè)表,相當(dāng)于對一個(gè)二維表進(jìn)行切割。連接運(yùn)算則需要把兩個(gè)表作為操作對象。如果兩個(gè)表以上進(jìn)行連接,應(yīng)當(dāng)兩兩進(jìn)行連接。1.3 數(shù)據(jù)庫設(shè)計(jì)基礎(chǔ) 考點(diǎn)6 數(shù)據(jù)庫設(shè)計(jì)步驟

      1設(shè)計(jì)原則

      (l)關(guān)系數(shù)據(jù)庫的設(shè)計(jì)應(yīng)遵從概念單一化“一事一地”的原則。

      (2)避免在表之間出現(xiàn)重復(fù)字段。

      (3)表中的字段必須是原始數(shù)據(jù)和基本數(shù)據(jù)元素。

      (4)用外部關(guān)鍵字保證有關(guān)聯(lián)的表之間的聯(lián)系。

      2設(shè)計(jì)步驟

      利用Visual FoxPro來開發(fā)數(shù)據(jù)庫應(yīng)用系統(tǒng),可以按照以下步驟來設(shè)計(jì)。

      (1)需求分析。

      (2)確定需求表C

      (3)確定需求字段。

      (4)確定聯(lián)系。

      (5)設(shè)計(jì)精確

      1.4 Visual FoxPro系統(tǒng)概述 考點(diǎn)7 Visual FoxPro的特點(diǎn)

      (l)增強(qiáng)項(xiàng)目與數(shù)據(jù)庫管理。

      (2)提高應(yīng)用程序開發(fā)的生產(chǎn)率。

      (3)互操作性與支持Internet。

      (4)充分利用已有數(shù)據(jù)。

      全國計(jì)算機(jī)等級(jí)考試二級(jí)VF考點(diǎn)分析之VF系統(tǒng)初步(第二章)2.1 Visual FoxPro的安裝和啟動(dòng) 考點(diǎn)1 Visual FoxPro的系統(tǒng)要求

      Visual FoxPro功能強(qiáng)大,但它對系統(tǒng)的要求并不高,個(gè)人計(jì)算機(jī)軟硬件基本要求如下。

      (1)處理器;486DX/66 MHz處理器,推薦使用Pentium或更高處理器的PC。

      (2)內(nèi)存:16MB以上的內(nèi)存,推薦使用24MB內(nèi)存。

      (3)硬盤空間:典型安裝需要85 MB硬盤空間,最大安裝需要90MB硬盤空間。

      (4)其他硬件:一個(gè)鼠標(biāo)、一個(gè)光盤驅(qū)動(dòng)器。推薦使用 VGA或更高分辨率的監(jiān)視器。

      (5)操作系統(tǒng):由于Visual FoxPro是32位產(chǎn)品,需要在Windows 95/98(中文版)、Windows NT 4.0(中文版)或更高版本的操作系統(tǒng)上運(yùn)行。小提示:

      退出Windows中的應(yīng)用程序或關(guān)閉窗口等操作,都可以利用快捷鍵Alt + F4來完成。2.2 Visual FoxPro的用戶界面 考點(diǎn)2 Visual FoxPro的主界面

      Visual FoxPro的主界面即其工作環(huán)境,啟動(dòng) Visual FoxPro后,打開如圖2一l所示的界面。

      考點(diǎn)3 工具欄的使用

      設(shè)置工具欄是微軟公司流行軟件的共同特點(diǎn),利用各種工具欄比菜單要方便得多。其默認(rèn)界面僅包括“常用”工具欄和“表單設(shè)計(jì)器”工具欄。除此之外,Visual FoxPro還提供其他10個(gè)工具欄,如表2-1所示。

      小提示:

      Visual FoxPro中有兩種工作方式:交互操作方式和程序方式,命令方式和菜單方式都屬于交互操作方式。2.3 項(xiàng)目管理器 考點(diǎn)4 使用項(xiàng)目管理器

      (1)項(xiàng)目管理器窗口中共有6個(gè)選項(xiàng)長,其中“全部”選項(xiàng)卡用來集中顯示該項(xiàng)目中的所有文件,“數(shù)據(jù)”、“文檔”、“類”、“代碼”和“其他“5個(gè)選項(xiàng)卡用來分類顯示各種文件。

      (2)項(xiàng)目管理器一是提供了簡便的、可視化的方法來組織和處理表、數(shù)據(jù)庫、表單、查詢和其他一切文件,通過單擊鼠標(biāo)就能實(shí)現(xiàn)對文件的創(chuàng)建、修改、刪除等操作;二是在項(xiàng)口管理器中可以將應(yīng)用系統(tǒng)編譯成一個(gè)擴(kuò)展名為APP的應(yīng)用文件或EXE的可執(zhí)行文件。

      (3)在Visual FoxPro中的不同文件類型及其擴(kuò)展名,如表2-2所示。

      表2-2 Visual FoxPro中的不同文件類型及其擴(kuò)展名

      考點(diǎn)5 定制項(xiàng)目管理器

      (l)移動(dòng)、縮放和折疊。

      (2)拆分項(xiàng)目管理器。

      (3)停放項(xiàng)目管理器 小提示:

      要拆分選項(xiàng)卡使之單獨(dú)使用,必須將選項(xiàng)卡折疊后才可以實(shí)現(xiàn)。2.4 Visual FoxPro向?qū)?、設(shè)計(jì)器、生成器 考點(diǎn)6 Visual FoxPro的向?qū)?/p>

      向?qū)且环N交互式程序用戶在一系列向?qū)聊簧匣卮饐栴}或者選擇選項(xiàng)后,向?qū)?huì)根據(jù)回答生成文件或者執(zhí)行任務(wù),幫助用戶快速完成一般性的任務(wù)〔例如創(chuàng)建表單、編排報(bào)表的格式、建立查詢、制作圖表、生成數(shù)據(jù)透視表、生成交叉表報(bào)表及在Web上按HTML格式發(fā)布等??键c(diǎn)7 Visual FoxPro的設(shè)計(jì)器

      Visual FoxPro的設(shè)計(jì)器是創(chuàng)建和修改應(yīng)用系統(tǒng)各種組件的可視化工具:利用各種設(shè)計(jì)器使得創(chuàng)建表、表單、數(shù)據(jù)庫、查詢和報(bào)表及管理數(shù)據(jù)變得輕而易舉,為初學(xué)者提供了方便??键c(diǎn)8 Visual FoxPro的生成器

      生成器是帶有選項(xiàng)卡的對話框,用于簡化對表單、復(fù)雜控件及參照完整性代碼的創(chuàng)建和修改過程。每個(gè)生成器顯示一系列選項(xiàng)卡,用于設(shè)置選中對象的屬性。可使用生成器在數(shù)據(jù)庫表之間生成控件、表單、設(shè)置控件格式和創(chuàng)建參照完整性。

      全國計(jì)算機(jī)等級(jí)考試二級(jí)VF考點(diǎn)分析之?dāng)?shù)據(jù)與數(shù)據(jù)運(yùn)算(第三章)3.1 常量與變量 考點(diǎn)1 常量

      常量用以表示一個(gè)具體的、不變的值。不同類型常量的書寫格式不同。在Visual FoxPro中,常量主要包括以下幾種類型。

      1數(shù)值型常量

      數(shù)值型常量即常數(shù),用來表示一個(gè)數(shù)量的大小,由數(shù)字0~9小數(shù)點(diǎn)和正負(fù)號(hào)組成。

      2貨幣型常量

      貨幣型常量用來表示貨幣值,其書寫格式與數(shù)值型常量類似,但要加上一個(gè)前置的符號(hào)($)。

      3字符型常量

      字符型常量也稱為字符串,其表示方法是用半角單引號(hào)、雙引號(hào)或方括號(hào)把字符串括起來。這里的單引號(hào)、雙引號(hào)或方括號(hào)稱為定界符許多常量都有定界符。定界符雖然不作為常量本身的內(nèi)容,但它規(guī)定了常量的類型及常量的起始和終止界限。

      4日期型常量

      日期型常量的定界符是一對花括號(hào)?;ɡㄌ?hào)內(nèi)包括年、月、日3部分內(nèi)容,各部分內(nèi)容之間用分隔符分隔。

      5日期時(shí)間型常量

      日期時(shí)間型常量包括日期和時(shí)間兩部分內(nèi)容:{<日期>,<時(shí)間>}。<日期>部分與日期型常量相似,也有傳統(tǒng)的和嚴(yán)格的兩種格式。

      6邏輯型常量

      邏輯型數(shù)據(jù)只有邏輯真和邏輯假兩個(gè)值。前后兩個(gè)句點(diǎn)作為邏輯型常量的定界符是必不可少的,否則會(huì)被誤認(rèn)為變量名。邏輯型數(shù)據(jù)只占用1字節(jié)??键c(diǎn)2 變量

      Visual FoxPro中變量分為字段變量和內(nèi)存變量二其中字段變量就是表中的字段。內(nèi)存變量是內(nèi)存中的一塊存儲(chǔ)區(qū)域,變量值就是存放在這個(gè)存儲(chǔ)區(qū)域里的數(shù)據(jù),變量的類型取決于變量值的類型。內(nèi)存變量的數(shù)據(jù)類型包括:字符型(C)、數(shù)值型(N)、貨幣型(Y)、日期型(D)、日期時(shí)間型(T)和邏輯型(L)。

      1簡單的內(nèi)存變量

      每一個(gè)變量都有一個(gè)名字,可以通過變量名訪問變量。如果當(dāng)前表中存在一個(gè)同名的字段變量,則在訪問內(nèi)存變量時(shí),必須在變量名前加上前綴M.(或M->),否則系統(tǒng)將訪問同名的字段變量。

      2數(shù)組

      與簡單內(nèi)存變量不同,數(shù)組在使用之前一般要用DIMENSION或DECLARE命令顯示創(chuàng)建,規(guī)定數(shù)組是一維數(shù)組還是二維數(shù)組,數(shù)組名和數(shù)組大小。數(shù)組大小由下標(biāo)值的上、下限決定,下限規(guī)定為1。在使用數(shù)組和數(shù)組元素時(shí),應(yīng)注意如下問題。

      (1)在一切使用簡單內(nèi)存變量的地方,均可以使用數(shù)組元素。

      (2)在賦值和輸入語句中使用數(shù)組名時(shí),表示將同一個(gè)值同時(shí)賦給該數(shù)組的全部數(shù)組元素。

      (3)在同一個(gè)運(yùn)行環(huán)境下,數(shù)組名不能與簡單變量名重復(fù)。

      (4)在賦值語句中的表達(dá)式位置不能出現(xiàn)數(shù)組名。

      (5)可以用一維數(shù)組的形式訪問二維數(shù)組??键c(diǎn)3 內(nèi)存變量常用命令

      1內(nèi)存變量的賦值

      格式1:<內(nèi)存變量名>=<表達(dá)式>

      格式2:STORE<表達(dá)式>TO<內(nèi)存變量名表>

      2表達(dá)式值的顯示

      格式1:?<表達(dá)式表>

      格式2:??<表達(dá)式表>

      3內(nèi)存變量的顯示

      格式1:LIST MEMORY[LIKE<通配符>][TO PRINTER!TO FILE<文件名>]

      格式2:DISPLAY MEMORY[LIKE<通配符>][TO PRINTER|TO FILE<文件名>]

      4內(nèi)存變量的清除

      格式1:CLEAR MEMORY

      格式2:RELEASE<內(nèi)存變量名表>

      格式3:RELEASE ALL[EXTENDED]

      格式4:RELEASE ALL[LIKE<通配符>|EXCEPT<通配符>]

      5表中數(shù)據(jù)與數(shù)組數(shù)據(jù)之間的交換

      將表的當(dāng)前記錄復(fù)制到數(shù)組。

      格式1:SCATTER[FIELDS<字段名表>][MEMO]TO<數(shù)組名>[BLANK]

      格式2:SCATTER[FIELDS LIKE<通配符>|FIELDS EXCEPT<通配符>][MEMO]TO<數(shù)組名>[BLANK]

      將數(shù)組數(shù)據(jù)復(fù)制到表的當(dāng)前記錄。

      格式1:GATHER FROM<數(shù)組名>[FIELDS<字段名表>][MEMO]

      格式2:GATHER FROM<數(shù)組名>[FIELDS LIKE<通配符>|FIELDS EXCE<通配符>][MEMO] 小提示:

      如果當(dāng)前表中存在一個(gè)同名的字段變量,則在訪問內(nèi)存變量時(shí),必須在內(nèi)存變量名前加上前綴M.(或M->),否則系統(tǒng)訪問的將是同名的字段變量。3.2 表達(dá)式

      考點(diǎn)4 數(shù)值、字符與日期時(shí)間表達(dá)式

      1數(shù)值表達(dá)式

      (1)算術(shù)運(yùn)算優(yōu)先級(jí)。數(shù)值表達(dá)式中的算術(shù)運(yùn)算符有些與日常使用的運(yùn)算符稍有Lx=別,算術(shù)運(yùn)算符及其含義和優(yōu)先級(jí)如表3-1所示。

      表3-1 算術(shù)運(yùn)算符及其優(yōu)先級(jí)

      (2)求余運(yùn)算。求余運(yùn)算%和取余函數(shù)MOD()的作用相同。余數(shù)的正負(fù)號(hào)與除數(shù)一致當(dāng)表達(dá)式中出現(xiàn)*、/和%運(yùn)算時(shí),它們具有相同的優(yōu)先級(jí)。

      2字符表達(dá)式

      由字符串運(yùn)算符將字符型數(shù)據(jù)連接起來形成,其結(jié)果仍是字符型數(shù)據(jù)字符型數(shù)據(jù)只能進(jìn)行兩種運(yùn)算(+、-),它們的優(yōu)先級(jí)相同。

      “+”首尾連接前后兩個(gè)字符串形成一個(gè)新的字符串;“-”連接前后兩個(gè)字符串,并將前字符串的尾部空格移到合并后的新字符串尾部 3日期時(shí)間表達(dá)式

      日期時(shí)間表達(dá)式中可以使用的運(yùn)算符也有“+”和“-”兩個(gè),其格式也有一定的限制,不能任意組合,如不能用運(yùn)算符“+”將兩個(gè)<日期>連接起來。考點(diǎn)5 關(guān)系表達(dá)式

      1關(guān)系表達(dá)式

      關(guān)系表達(dá)式通常也稱為簡單邏輯表達(dá)式,它是由關(guān)系運(yùn)算符將兩個(gè)運(yùn)算對象連接起來而形成的,即:<表達(dá)式><關(guān)系運(yùn)算符><表達(dá)式>。關(guān)系運(yùn)算符及其含義如表3-2所示,它們的優(yōu)先級(jí)相同。表3-2 關(guān)系運(yùn)算符

      2設(shè)置字符的排序次序

      當(dāng)比較兩個(gè)字符串時(shí),系統(tǒng)對兩個(gè)字符串的字符自左向右逐個(gè)進(jìn)行比較;一旦發(fā)現(xiàn)兩個(gè)對應(yīng)字符不同,就根據(jù)這兩個(gè)字符的排序序列決定兩個(gè)字符串的大小

      3字符串精確比較與EXACT設(shè)置

      在用雙等號(hào)運(yùn)算符==比較兩個(gè)字符串時(shí),只有當(dāng)兩個(gè)字符串完全相同(包括空格及各字符的位置)時(shí),運(yùn)算結(jié)果才會(huì)是邏輯真.T.,否則為邏輯假.F.??键c(diǎn)6 邏輯表達(dá)式

      1邏輯表達(dá)式

      邏輯運(yùn)算符的運(yùn)算規(guī)則如表3-3所示,其中各代表兩個(gè)邏輯型常量。

      表3-3 邏輯運(yùn)算規(guī)則

      2運(yùn)算符優(yōu)先級(jí)

      .NOT.或!(邏輯非)、.AND.(邏輯與)、.OR.(邏輯或)依次降低。小提示:

      表達(dá)式是指常量、變量、函數(shù)或由它們通過特定的運(yùn)算符連接起來的式子。3.3 常用函數(shù) 考點(diǎn)7 數(shù)值函數(shù)

      數(shù)值函數(shù)是指函數(shù)值為數(shù)值的一類函數(shù),它們的自變量和返回值往往都是數(shù)值型數(shù)據(jù)。

      1絕對值和符號(hào)函數(shù)

      格式:ABS<數(shù)值表達(dá)式>)

      SIGN(<數(shù)值表達(dá)式>)

      功能:ABS()返回指定的數(shù)值表達(dá)式的絕對值。SIGN()返回指定數(shù)值表達(dá)式的符號(hào)。

      2求平方根函數(shù)

      格式:SQRT(<數(shù)值表達(dá)式>)

      功能:返回指定表達(dá)式的平方根,表達(dá)式的值不能為負(fù)。

      3圓周率函數(shù)

      格式:PI()

      功能:返回圓周率二,該函數(shù)沒有自變量。

      4求整數(shù)函數(shù)

      格式:INT(<數(shù)值表達(dá)式>)CEILING(<數(shù)值表達(dá)式>)FLOOR(<數(shù)值表達(dá)式>)

      功能:INT()返回指定數(shù)值表達(dá)式的整數(shù)部分。CEILING()返回大于或等于指定數(shù)值表達(dá)式的最小整數(shù)。FLOOR()返回小于或等于指定數(shù)值表達(dá)式的最大整數(shù)。5四舍五入函數(shù)

      格式:ROUND(<數(shù)值表達(dá)式I>,<數(shù)值表達(dá)式2>)

      功能:返回<數(shù)值表達(dá)式I>在指定位置四舍五入后的結(jié)果,<數(shù)值表達(dá)式2>指明四舍五入的位置。若<數(shù)值表達(dá)式2>大于等于0,表示的是要保留的小數(shù)位,若小于。,則表示整數(shù)部分的舍入位數(shù)。

      6求余數(shù)函數(shù)

      格式:MOD(<數(shù)值表達(dá)式1>,<數(shù)值表達(dá)式2>)

      功能:返回兩個(gè)數(shù)相除后的余數(shù)。余數(shù)的正、負(fù)號(hào)與除數(shù)相同。如果被除數(shù)與除數(shù)同號(hào),則函數(shù)值為兩數(shù)相除的余數(shù);如果異號(hào),則函數(shù)值為兩數(shù)相除的余數(shù)再加上除數(shù)的值。

      7求最大值和最小值函數(shù)

      格式:MAX(<數(shù)值表達(dá)式1>,<數(shù)值表達(dá)式2>[,<數(shù)值表達(dá)式3>?])MIN(<數(shù)值表達(dá)式1>,<數(shù)值表達(dá)式2>[,<數(shù)值表達(dá)式3>?])

      功能MAX()返回自變量中的最大值。MIN()返回自變量中的最小值??键c(diǎn)8 字符函數(shù)

      1求字符串長度函數(shù)

      格式:LEN(<字符表達(dá)式>)

      功能:返回指定字符表達(dá)式值的長度,即字符個(gè)數(shù)。

      2大小寫轉(zhuǎn)換函數(shù)

      格式:LOWER(<字符表達(dá)式>)UPPER(<字符表達(dá)式>)

      功能:LOWER()將指定表達(dá)式中的大寫字母轉(zhuǎn)換成小寫字母,其他字符保持不變;UPPER()將指定表達(dá)式中的小寫字母轉(zhuǎn)換成大寫字母,其他字符保持不變。

      3空格字符串生成函數(shù)

      格式:SAPCE(<數(shù)值表達(dá)式>)

      功能:返回由指定數(shù)目的空格組成的字符串。

      4側(cè)除前后空格函數(shù)

      格式:TRIM(<字符表達(dá)式>)LTRIM(<字符表達(dá)式>)ALLTRIM(<字符表達(dá)式>)

      功能:TRIM()刪除指定表達(dá)式尾部的空格。LTRIM()刪除指定表達(dá)式前端的空格。ALLTRIM()刪除指定字符串前端和尾部的空格。

      5取子串函數(shù)

      格式:LEFT(<字符表達(dá)式>,<長度>)RIGHT(<字符表達(dá)式>,<長度>)SUBSTR(<字符表達(dá)式>,<起始位置>[,<長度>])

      功能:LEFT()從指定表達(dá)式左端截取一個(gè)指定長度的子串作為函數(shù)值。RIGHT()從指定表達(dá)式右端載取一個(gè)指定長度的子串作為函數(shù)值。SUBSTR()從指定表達(dá)式指定位置截取一個(gè)指定長度的子串作為函數(shù)值,若默認(rèn)<長度>,則截取的子串表示從指定位置開始一直到字符串尾部。

      6計(jì)算子串出現(xiàn)次數(shù)函數(shù)

      格式:OCCURS(<字符表達(dá)式1>,<字符表達(dá)式2>)

      功能:返回第一個(gè)字符串在第二個(gè)字符串中出現(xiàn)的次數(shù)。

      7求子串位置函數(shù)

      格式:AT(<字符表達(dá)式1>,<字符表達(dá)式2>[,<數(shù)值表達(dá)式>])ATC(<字符表達(dá)式1>,<字符表達(dá)式2>[,<數(shù)值表達(dá)式>])

      功能:AT()返回第一個(gè)字符串的首字符在第_二個(gè)字符串中出現(xiàn)的位置。前提條件是第一個(gè)字符串必須是第二個(gè)字符串的子串,否則函數(shù)返回值為0。ATC()功能與AT()類似,但不區(qū)分字符串中字符的大小寫。

      8子串替換函數(shù)

      格式:STUFF<字符表達(dá)式1>,<起始位置>,<長度>,<字符表達(dá)式2>)

      功能:用<字符表達(dá)式2>的值替換<字符表達(dá)式I>中由<起始位置>和<長度>指定的一個(gè)子串。

      9字符替換函數(shù)

      格式CHRTRAN(<字符表達(dá)式1>,<字符表達(dá)式2>,<字符表達(dá)式3>)

      功能:該函數(shù)的自變量是三個(gè)字符表達(dá)式。當(dāng)?shù)谝粋€(gè)字符串中的一個(gè)或多個(gè)字符與第二個(gè)字符串中的某個(gè)字符相匹配時(shí),應(yīng)用第三個(gè)字符串中的對應(yīng)字符(相同位置)替換這些字符如果第三個(gè)字符串包含的字符個(gè)數(shù)少于第二個(gè)字符串包含的字符個(gè)數(shù),因?yàn)闆]有對應(yīng)字符,那么第一個(gè)字符串中相匹配的各字符將被刪除。如果第三個(gè)字符串包含的字符個(gè)數(shù)多于第二個(gè)字符串包含的字符個(gè)數(shù),多余字符將被忽略。

      10字符串匹配函數(shù)

      格式:LIKE(<字符表達(dá)式I>,<字符表達(dá)式2>)

      功能:比較兩個(gè)字符串對應(yīng)位置_L的字符。其中<字符表達(dá)式1>中可包含通配符*和?。*表示若干個(gè)任意字符,?表示任意一個(gè)字符??键c(diǎn)9 日期和時(shí)間函數(shù)

      1系統(tǒng)日期和時(shí)間函數(shù)

      格式:DATE()TIME()DATETIME()

      功能:DATE()返回當(dāng)前系統(tǒng)日期,函數(shù)值為日期TIME()以24小時(shí)制返回當(dāng)前系統(tǒng)時(shí)間,函數(shù)值為字符型;DATETIME()返回肖前系統(tǒng)日期時(shí)間,函數(shù)值為日期時(shí)間型。

      2求年份、月份和天數(shù)的函數(shù)

      格式:YEAR(<日期表達(dá)式>|<日期時(shí)間表達(dá)式>)MONTH(<日期表達(dá)式>|<日期時(shí)間表達(dá)式>)DAY(<日期表達(dá)式>|<日期時(shí)間表達(dá)式>)

      功能:YEAR()從指定的日期表達(dá)式或日期時(shí)間表達(dá)式中返回年份。MONTH()從指定的日期表達(dá)式或日期時(shí)間表達(dá)式中返回月份DAY()從指定的日期表達(dá)式或日期時(shí)間表達(dá)式中返回月份的天數(shù)。這3個(gè)函數(shù)的返回值均為數(shù)值型數(shù)據(jù)

      3求時(shí)、分和秒的函數(shù)

      格式:HOUR(<日期時(shí)間表達(dá)式>)MINUTE(<日期時(shí)間表達(dá)式>)SEC(<日期時(shí)間表達(dá)式>)

      功能:HOUR()從指定的日期時(shí)間表達(dá)式中返回小時(shí)部分(24小時(shí)制)。MINUTE()從指定的日期時(shí)間表達(dá)式中返回分鐘部分。SEC()從指定的日期時(shí)間表達(dá)式中返回秒鐘部分??键c(diǎn)10 數(shù)據(jù)類型轉(zhuǎn)換函數(shù)

      數(shù)據(jù)類型轉(zhuǎn)換函數(shù)的功能是將某一種類型的數(shù)據(jù)轉(zhuǎn)換成另一種類型的數(shù)據(jù)。

      1數(shù)值轉(zhuǎn)換成字符串函數(shù)

      格式:STR(<數(shù)值表達(dá)式>[,<長度>[,<小數(shù)位數(shù)>]])

      功能:將<數(shù)值表達(dá)式>的值轉(zhuǎn)換成字符串,轉(zhuǎn)換時(shí)根據(jù)需要自動(dòng)四舍五入。

      2字符串轉(zhuǎn)換成數(shù)值函數(shù)

      格式:V AL(<字符表達(dá)式>)

      功能:將由數(shù)字符號(hào)(包括符號(hào)、小數(shù)點(diǎn))組成的字符型數(shù)據(jù)轉(zhuǎn)換成相應(yīng)的數(shù)值型數(shù)據(jù)。

      3字替串轉(zhuǎn)換成日期或日期時(shí)間函數(shù)

      格式:CTOD(<字符表達(dá)式>)CTOT<字符表達(dá)式>)

      功能:CTOD()將<字符表達(dá)式>轉(zhuǎn)換成日期型數(shù)據(jù)CTOT()將<字符表達(dá)式>轉(zhuǎn)換成日期時(shí)間型數(shù)據(jù)。

      4日期或日期時(shí)間轉(zhuǎn)換成字符串函數(shù)

      格式:DTOC(<日期表達(dá)式>|<日期時(shí)間表達(dá)式>[,1])TTOC(<日期時(shí)間表達(dá)式>[,1])

      功能:DTOC()將日期型數(shù)據(jù)或日期時(shí)間型數(shù)據(jù)的日期部分轉(zhuǎn)換成字符串。TTOC()將日期時(shí)間型數(shù)據(jù)轉(zhuǎn)換成字符串。

      5宏替換函數(shù)

      格式:&<字符型變量>[.]

      功能:替換出字符型變量的內(nèi)容,即&的值是變量中的字符串。如果該函數(shù)與其后面的字符無明顯分界,則要用“.”作為函數(shù)結(jié)束標(biāo)識(shí)宏替換可以嵌套使用??键c(diǎn)11 測試函數(shù)

      1值域測試函數(shù)

      格式:BETWEEN(<表達(dá)式1>,<表達(dá)式2>,<表達(dá)式3>)

      功能:判斷一個(gè)表達(dá)式的值是否介于其他兩個(gè)表達(dá)式的值之間。

      2空值(NULL)測試函數(shù)

      格式:ISNULL(<表達(dá)式>)

      功能:判斷一個(gè)表達(dá)式的運(yùn)算結(jié)果是否為NULL值。

      3“空”值測試函數(shù)

      格式:EMPTY(<表達(dá)式>)

      功能:略。

      4數(shù)據(jù)類型測試函數(shù)

      格式:VARTYPE(<表達(dá)式>[,<邏輯表達(dá)式>])

      功能:測試表達(dá)式的類型,返回一個(gè)大寫字母,函數(shù)值為字符型。字母含義如表3-4所示。

      表3-4 VARTYPE()測得的數(shù)據(jù)類型

      5表文件尾測試函數(shù)

      格式:EOF([<工作區(qū)號(hào)>|<表別名>])

      功能:測試當(dāng)前表文件(若默認(rèn)自變量)或指定表文件中的記錄指針是否指向文件尾,若是,則返回邏輯真(.T.),否則為邏輯假(.F.)。若在指定工作區(qū)上沒有打開表文件,則函數(shù)返回邏輯假(.F.),若表文件中不包含任何記錄,則函數(shù)返回邏輯真(.T.)。

      6表文件首測試函數(shù)

      格式:BOF([<工作區(qū)號(hào)>|<表別名>])

      功能:測試當(dāng)前表義件(若默認(rèn)自變量)或指定表文件中的記錄指針是否指向文件首,若是,則返回邏輯真(.T.),否則為邏輯假(.F.)(若在指定工作區(qū)上沒有打開表文件,則函數(shù)返回邏輯假(.F.),若表文件中不包含任何記錄,則函數(shù)返回邏輯真(.T.)。

      7記錄號(hào)測試函數(shù)

      格式:RECNO([<工作區(qū)號(hào)>|<表別名>])

      功能:返回當(dāng)前表文件(若默認(rèn)自變量)或指定表文件中當(dāng)前記錄的記錄號(hào)。如果指定工作區(qū)上沒有打開表文件,則函數(shù)值為0;如果記錄指針指向文件尾,則函數(shù)值為表文件中的記錄數(shù)加1;如果記錄指針指向文件首,則函數(shù)值為表文件中第一條記錄的記錄號(hào)。

      8記錄個(gè)數(shù)測試函數(shù)

      格式:RECCOUNT([<工作區(qū)號(hào)>|<表別名>])

      功能:返回當(dāng)前表文件(若默認(rèn)自變量)或指定表文件中的記錄個(gè)數(shù)。如果指定工作區(qū)上沒有打開表文件,則函數(shù)值為0,RECCOUNT)函數(shù)不受刪除標(biāo)記及SET DELETED設(shè)置的影響,同樣測試表中所有的記錄個(gè)數(shù)。

      9條件測試函數(shù)

      格式:IIF(<邏輯表達(dá)式>,<表達(dá)式1>,<表達(dá)式2>)

      功能:測試<邏輯表達(dá)式>的值,若為邏輯真(.T.),則函數(shù)返回<表達(dá)式1>的值,否則返回<表達(dá)式2>的值<表達(dá)式1>和<表達(dá)式2>的類型可以不相同。

      10記錄刪除測試函數(shù)

      格式:DELETED([<工作區(qū)號(hào)>|<表別名>])

      功能:測試當(dāng)前表文件(若默認(rèn)自變量)或指定表文件中,記錄指針?biāo)傅漠?dāng)前記錄是否有刪除標(biāo)記“*”。若有,則為真,否則為假。

      全國計(jì)算機(jī)等級(jí)考試二級(jí)VF考點(diǎn)分析之VF數(shù)據(jù)庫及其操作(第四章)4.1 Visual FoxPro數(shù)據(jù)庫及其建立 考點(diǎn)1 建立和使用數(shù)據(jù)庫

      1數(shù)據(jù)庫的建立

      (1)在項(xiàng)目管理器中建立數(shù)據(jù)庫。

      (2)通過“新建”對話框建立數(shù)據(jù)庫。

      (3)使用命令建立數(shù)據(jù)庫,格式為:

      CREATE DATABASE[DatabaseName |?]

      2數(shù)據(jù)庫的打開

      (1)在項(xiàng)目管理器中打開。

      (2)通過“打開”對話框打開數(shù)據(jù)庫。

      (3)使用命令打開數(shù)據(jù)庫,格式為:

      OPEN DATABASE[FileName |?][EXCLUSIVE I SHARED] [NOUPDATE] [VALIDATE] 考點(diǎn)2 修改和刪除數(shù)據(jù)庫

      Visual FoxPro在建立數(shù)據(jù)庫時(shí)建立了擴(kuò)展名分別為dbc、dct和dcx的3個(gè)文件,用戶不能直接修改這些文件。

      Visual FoxPro中修改數(shù)據(jù)庫實(shí)際是打開數(shù)據(jù)庫設(shè)計(jì)器,完成數(shù)據(jù)庫中各種對象的建立、修改和刪除等操作。

      可以有3種方法打開數(shù)據(jù)庫設(shè)計(jì)器。

      (1)從項(xiàng)目管理器中打開數(shù)據(jù)庫設(shè)計(jì)器。

      (2)從“打開”對話框中打開數(shù)據(jù)庫設(shè)計(jì)器。

      (3)使用命令打開數(shù)據(jù)庫設(shè)計(jì)器,格式為: MODIFY DATABASE[DatabaseName|?]

      在項(xiàng)目管理器中不管刪除還是移去數(shù)據(jù)庫文件,都不會(huì)刪除其所包含的各個(gè)對象做口數(shù)據(jù)表)。如果要在刪除數(shù)據(jù)庫的同時(shí)刪除其所包含的數(shù)據(jù)表,就必須使用命令,格式為: DELETE DATABASE DatabaseName|?[DELETETABLES][RECYCLE] 小提示:

      在Visual FoxPro中,Open DataBase和Modify DataBase命令的區(qū)別在于:Open DataBase打開的只是數(shù)據(jù)庫的工作環(huán)境,并不會(huì)進(jìn)入數(shù)據(jù)庫設(shè)計(jì)器;Modify DataBase是打開數(shù)據(jù)庫設(shè)計(jì)器。

      4.2 建立數(shù)據(jù)庫表 考點(diǎn)3 在數(shù)據(jù)庫中建立表

      在數(shù)據(jù)庫中建立數(shù)據(jù)表,最直接的方法就是在數(shù)據(jù)庫設(shè)計(jì)器中利用鼠標(biāo)右鍵單擊空白處,選擇“新建表”命令,在彈出的表設(shè)計(jì)器中設(shè)置數(shù)據(jù)表結(jié)構(gòu)。另外可以在命令窗口利用OPEN DATA命令先打開數(shù)據(jù)庫,然后利用CREATE命令打開表設(shè)計(jì)器進(jìn)行數(shù)據(jù)表設(shè)計(jì),如圖4-l所示。

      圖4-1 表設(shè)計(jì)器

      1字段名

      (l)自由表字段名最長為10個(gè)字符。

      (2)數(shù)據(jù)庫表字段名最長為128個(gè)字符。

      (3)字段名必須以字母或漢字開頭。

      (4)字段名可以由字母、漢字、數(shù)字和下劃線組成。

      (5)字段名中不能包含空格。

      2字段類型和寬度

      (1)字符型:可以是字母、數(shù)字等各種字符型文本,如用戶名稱。

      (2)貨幣型:貨幣單位,如貨物價(jià)格。

      (3)數(shù)值型:整數(shù)或小數(shù),如訂貨數(shù)量。

      (3)浮點(diǎn)型:功能類似于“數(shù)值型”,其長度在表中最長可達(dá)20位。

      (4)日期型:由年、月、日構(gòu)成的數(shù)據(jù)類型,如訂貨日期。

      (5)日期時(shí)間型:由年、月、日、時(shí)、分、秒構(gòu)成的數(shù)據(jù)類型,如員工上班的時(shí)間。

      (6)雙精度型:雙精度數(shù)慎類型,一般用于要求精度很高的數(shù)據(jù)。

      (7)整型:不帶小數(shù)點(diǎn)的數(shù)值類型,如訂單的行數(shù)。

      (8)邏輯型:值為“真”(.T.)或假(.F.),如表示訂單是否已執(zhí)行完。

      (9)備注型:不定長的字符型文本。在表中占4個(gè)字節(jié),表備注型文件的擴(kuò)展名為FPT。

      (10)通用型:用于標(biāo)記電子表格、文檔、圖片等OLE對象,在表中占4個(gè)字節(jié)。

      (11)字符型(二進(jìn)制)。

      (12)備注型(二進(jìn)制)。

      3空值

      一個(gè)字段是否允許為空值與實(shí)際應(yīng)用有關(guān),比如作為關(guān)鍵字的字段是不允許為空值的,而那些在插入記錄時(shí)允許暫缺的字段值往往允許為空值。

      4字段有效性組框

      在字段有效性組框中可以定義字段的有效性規(guī)則、違反規(guī)則時(shí)的提示信息和字段的默認(rèn)值。

      5顯示組框

      在顯示組框下可以定義字段顯示的格式、輸入的掩碼和字段的標(biāo)題。輸入掩碼是字段的一種屬性,用限制或控制用戶輸入的格式。標(biāo)題用于字段顯示時(shí)的標(biāo)題,如果不指定標(biāo)題則顯示字段名。當(dāng)字段名是英文或縮寫時(shí),則通過指定標(biāo)題可以使界面更友好。

      6字段注釋

      可以為每個(gè)字段添加注釋,便于日后或其他人對數(shù)據(jù)庫進(jìn)行維護(hù)??键c(diǎn)4 修改表結(jié)構(gòu)

      在Visual FoxPro中可以對表結(jié)構(gòu)任意修改,修改表結(jié)構(gòu)和建立表結(jié)構(gòu)時(shí),表設(shè)計(jì)器界面完全一樣。修改數(shù)據(jù)表結(jié)構(gòu)時(shí),首先應(yīng)該用USE命令打開要修改的數(shù)據(jù)表,然后利用MODIFY STRUCTURE打開表設(shè)計(jì)器進(jìn)行修改,具體操作有以下幾種。

      (1)修改已有字段。

      (2)添加新字段。

      (3)刪除不用的字段。4.3 表的基本操作 考點(diǎn)5 使用瀏覽器操作表

      在交互式工作方式下,最簡單、方便的方法就是使用BROWSE瀏覽器瀏覽表,打開瀏覽器的方法有多種。在項(xiàng)目管理器中將數(shù)據(jù)庫展開至表,然后單擊“瀏覽”按鈕,或直接在窗口中輸入BROWSE命令(首先應(yīng)該打開表文件)。

      1瀏覽器操作

      (1)下一記錄(下箭頭鍵)。

      (2)前一記錄(上箭頭鍵)。

      (3)下一頁(PageDown鍵)。

      (4)上一頁(PageUp鍵)。

      (5)下一字段(Tab鍵)。

      (6)前一字段(Shift+Tab鍵)。

      2修改記錄

      只需將光標(biāo)定位到要修改的記錄和字段上,就可以進(jìn)行修改了。

      3刪除記錄

      Visual FoxPro中刪除記錄有邏輯刪除和物理刪除兩種,邏輯刪除只在記錄旁做刪除標(biāo)記(如圖4-2所示),必要時(shí)可以進(jìn)行恢復(fù)物理刪除是在邏輯刪除的基礎(chǔ)上真正地將記錄從表中刪除。要在瀏覽器中刪除有刪除標(biāo)記的記錄,可選擇“表/徹底刪除”菜單命令。

      圖4-2 增加和刪除記錄

      考點(diǎn)6 增加、刪除、修改和顯示記錄的命令

      1增加記錄

      APPEND命令是在表的尾部增加記錄,格式有如下兩種。

      格式1:APPEND

      格式2:APPEND BLANK

      2插入記錄

      格式:INSERT [BEFORE][BLANK]

      3刪除記錄

      刪除記錄有物理刪除和邏輯刪除兩種,Visual FoxPro用來刪除記錄的命令如下。

      (1)設(shè)置刪除標(biāo)記的命令

      格式:DELETE [FOR lExpressionl]

      說明:如果不使用FOR短語指定邏輯條件,則只刪除當(dāng)前記錄,否則邏輯刪除滿足條件的所有記錄。

      (2)恢復(fù)記錄的命令。

      格式:RECALL [FOR lExpressionl]

      說明:使用該命令恢復(fù)表中邏輯刪除的記錄,短語FOR的功能同上。

      (3)物理刪除有刪除標(biāo)記的記錄

      格式:PACK

      說明:此命令用來物理刪除當(dāng)前表中所有帶刪除標(biāo)記的記錄。

      (4)物理刪除表中的全部記錄

      格式:ZAP

      說明:不管表中記錄是否帶有刪除標(biāo)記,此命令可以一次性將當(dāng)前表中的記錄全部物理刪除,但表結(jié)構(gòu)仍保留使用此命令相當(dāng)于DELETE ALL與 PACK的連用。

      4修改記錄

      在Visual FoxPro中可以交互修改記錄,也可以用指定值直接修改記錄。

      (1)用EDIT或CHANGE命令交互式修改。

      (2)用REPLACE命令直接修改。

      5顯示記錄

      格式:LIST/DISPLAY [[FIELDS]FieldList][FOR LExpressionl][OFF] [TO PRINTER[PROMPT]|TO FILE FileName] 考點(diǎn)7 查詢定位的命令

      (1)用GOTO命令直接定位

      (2)SKIP命令

      (3)用LOCATE命令定位。

      LOCATE命令是按條件定位記錄位置,格式為: LOCATE FOR IExpressionl LOCATE命令常用結(jié)構(gòu)如下。LOCATE FOR IExpression1 DO WHILE FOUND()****處理數(shù)據(jù)*** CONTINUE ENDDO 小提示:

      連續(xù)使用DELETE ALL和PACK命令,其操作結(jié)果與ZAP命令一樣,都可以將表中的所有記錄一次性物理刪除。4.4 索引與排序 考點(diǎn)8 索引的基本概念

      索引是對表中的記錄按照某種邏輯順序重新排列。

      (l)主索引:在指定的字段或表達(dá)式中不允許出現(xiàn)重復(fù)值的索引,且一個(gè)表只能創(chuàng)建一個(gè)主索引。

      (2)候選索引:具有與主索引相同的性質(zhì)和功能,但一個(gè)表中可以創(chuàng)建多個(gè)候選索引,其指定的字段或表達(dá)式中也不允許出現(xiàn)重復(fù)值。

      (3)唯一索引:它的“唯一性”是指索引項(xiàng)的唯一,而不是字段值的唯一。但在使用該索引時(shí),重復(fù)的索引段值只有唯一一個(gè)值出現(xiàn)在索引項(xiàng)中。

      (4)普通索引:不僅允許字段中出現(xiàn)重復(fù)值,并且索引項(xiàng)中也允許出現(xiàn)重復(fù)值??键c(diǎn)9 索引的建立

      1單項(xiàng)索引

      在表設(shè)計(jì)器界面中有“字段”、“索引”和“表”3個(gè)選項(xiàng)卡,在“字段”選項(xiàng)卡中定義字段時(shí)就可以直接指定某些字段是否為索引項(xiàng),用鼠標(biāo)單擊定義索引的下拉列表框可以看到3個(gè)選項(xiàng):無、升序和降序(默認(rèn)是無)。如果選定升序或降序,則在對應(yīng)的字段上建立一個(gè)普通索引,索引名與字段名同名,索引表達(dá)式就是對應(yīng)的字段。

      2復(fù)合字段索引

      (1)在“索引”選項(xiàng)卡中的索引名欄目中輸入索引名。

      (2)在索引類型的下拉框中選擇索引類型。

      (3)單擊表達(dá)式欄右側(cè)的按鈕,打開表達(dá)式生成器。

      (4)在“表達(dá)式”文本框中輸入索引表達(dá)式(如圖4-3所示),最后單擊“確定”按鈕。

      圖4-3 表達(dá)式生成器界面

      3使用命令建立索引

      格式:INDEX ON eExpression TO IDXFileName | TAG TagName[OF CDXFileName] [FOR lExpression][COMPACT] [ASCENDING | DESCENDING] [UNIQUE | CANDIDATE] [ADDITIVE]

      從索引的組織方式來講,索引共有3種類型。

      (1)單獨(dú)的IDX索引,是一種非結(jié)構(gòu)索引。

      (2)采用非默認(rèn)名的CDX索引,也是一種非結(jié)構(gòu)復(fù)合索引。

      (3)與表同名的CDX索引,是結(jié)構(gòu)復(fù)合索引。

      結(jié)構(gòu)復(fù)合索引文件可隨表的打開而打開,在同一個(gè)索引文件中能包含多個(gè)索引方案或索引關(guān)鍵字,在添加、更改或刪除記錄時(shí)自動(dòng)維護(hù)索引??键c(diǎn)10 索引的使用

      (l)打開索引文件,格式為: SET INDEX TO Indexfilelist

      (2)設(shè)置當(dāng)前索引,格式為:

      SET ORDER TO[nIndexNumber |[TAG]TagName][ASCENDING|DESCENDING]

      (3)使用索引快速定位,格式為:

      SEEK eExpression[ORDER nIndexNumber|[TAG]TagName][ASCENDING| DESCENDING]

      (4)刪除索引,格式為:

      DELETE TAG TagNamel &&TagName1為索引名

      要?jiǎng)h除全部索引,可使用命令:DELETE TAG ALL 考點(diǎn)11 排序

      索引可以使用戶按照某種順序?yàn)g覽或查找表中的記錄,這種順序是邏輯的,如要對表中的記錄按物理順序重新排列,可使用SORT命令,格式為:

      SORT TO TableName ON FieldNainel[/A}/D][/C][,F(xiàn)ieldName2[/A|/D][/C]?][ASCEND ING | DESCENDING][FOR lExpressionl][FIELDS FieldNameList] 小提示:

      在數(shù)據(jù)庫表中只能有一個(gè)主索引,且只能在表設(shè)計(jì)器中建立。其他3種索引可以建立多個(gè),既能在表設(shè)計(jì)器中建立,也能以命令方式建立,但在自由表中不能為其創(chuàng)建主索引,只能創(chuàng)建后3種索引,同樣也可以建立多個(gè)。4.5 數(shù)據(jù)完整性

      考點(diǎn)12 實(shí)體完整性與主關(guān)鍵字

      (1)實(shí)體完整性是保證表中記錄唯一的特性,即在同一個(gè)表中不允許有重復(fù)的記錄出現(xiàn)。在Visual Pro中通過主索引和候選索引來保證數(shù)據(jù)的實(shí)體完整性。

      (2)如果一個(gè)字段的值或幾個(gè)字段的值能夠唯一標(biāo)志表中的一條記錄,則稱這個(gè)字段為候選關(guān)鍵字。在Visual FoxPro中將主關(guān)鍵字稱做主索引,將候選關(guān)鍵字稱為候選索引??键c(diǎn)13 參照完整性與表之間的關(guān)聯(lián)

      1建立表之間的聯(lián)系

      參照完整性與表之間的聯(lián)系有關(guān),其含義大致是:當(dāng)插入、刪除或修改一個(gè)表中的數(shù)據(jù)時(shí),通過參照引用相互關(guān)聯(lián)的另一個(gè)表中的數(shù)據(jù),檢查對表的數(shù)據(jù)操作是否正確。

      在數(shù)據(jù)庫設(shè)計(jì)器中設(shè)計(jì)表之間的聯(lián)系時(shí),要在父表中建立主索引,在子表中建立普通索引,然后通過父表主索引和子表的普通索引建立起兩個(gè)表之間的聯(lián)系。

      2設(shè)置參照完整性約束

      建立參照完整性之前,首先必須清理數(shù)據(jù)庫,即物理刪除表中被邏輯刪除的記錄,然后選擇兩個(gè)關(guān)聯(lián)表之間的連線并選擇“數(shù)據(jù)庫”、“編輯參照完整性”菜單命令,打開如圖4-4所示的“參照完整性生成器”對話框。

      圖4-4 “參照完整性生成器”對話框 小提示:

      欲建立兩表之間的聯(lián)系,首先用鼠標(biāo)選中一個(gè)表的主索引,按住鼠標(biāo)左鍵不放,并拖動(dòng)鼠標(biāo)到另一個(gè)表的索引上,這時(shí)鼠標(biāo)箭頭變成小矩形狀,最后釋放鼠標(biāo)。4.6 自由表

      考點(diǎn)14 數(shù)據(jù)庫表與自由表

      自由表是不屬于任何數(shù)據(jù)庫的表。在沒有打開數(shù)據(jù)庫時(shí),所建立的表就是自由表。數(shù)據(jù)庫表與自由表之間可以相互轉(zhuǎn)化。

      1建立自由表的方法

      (1)在項(xiàng)目的“數(shù)據(jù)”選項(xiàng)卡中選擇“自由表”,單擊“新建”按鈕。

      (2)在沒有打開數(shù)據(jù)庫的情況下,通過“新建”對話框,選擇“表”并單擊“新建文件”按鈕。

      (3)在沒有打開數(shù)據(jù)庫的情況下,在命令窗口輸入CREATE命令,新建自由表。

      2數(shù)據(jù)庫表相對于自由表的特點(diǎn)

      (l)數(shù)據(jù)庫表可以使用長表名,在表中可以使用長字段名。

      (2)可以為數(shù)據(jù)庫表中的字段指定標(biāo)題和添加注釋。

      (3)可以為數(shù)據(jù)庫表中的字段指定默認(rèn)值和輸入掩碼。

      (4)數(shù)據(jù)庫表的字段有默認(rèn)的控件類。

      (5)可以為數(shù)據(jù)庫表規(guī)定字段級(jí)規(guī)則和記錄級(jí)規(guī)則。

      (6)數(shù)據(jù)庫表支持主關(guān)鍵字、參照完整性和表之間的聯(lián)系。

      (7)支持INSERT,UPDATE和DELETE事件的觸發(fā)器??键c(diǎn)15 將自由表添加到數(shù)據(jù)庫中

      (1)在數(shù)據(jù)庫設(shè)計(jì)器中可利用“數(shù)據(jù)庫”→“添加表”菜單命令,在“打開”對話框中選擇自由表文件,將其添加到數(shù)據(jù)庫中。

      (2)直接用命令方式將自由表添加到當(dāng)前數(shù)據(jù)庫中,格式為: ADD TABLE TableName|?[NAME LongTableName] 考點(diǎn)16 從數(shù)據(jù)庫中移出表

      (1)直接利用命令移出數(shù)據(jù)庫表,格式為:

      REMOVE TABLE TableName |?[DELETE][RECYCLE]

      (2)從項(xiàng)目管理器中移出數(shù)據(jù)庫。

      (3)從數(shù)據(jù)庫設(shè)計(jì)器中移出數(shù)據(jù)庫。4.7 多個(gè)表的同時(shí)使用

      在Visual FoxPro中,一次可以打開多個(gè)數(shù)據(jù)庫,每個(gè)數(shù)據(jù)庫都可以打開多個(gè)數(shù)據(jù)表??键c(diǎn)17 多工作區(qū)的概念

      指定工作區(qū)的命令格式為SELECT nWorkArea | cTableAlias,每個(gè)表打開后都有兩個(gè)默認(rèn)別名,一個(gè)是表的自身名,另一個(gè)是工作區(qū)所對應(yīng)的別名。在前10個(gè)工作區(qū)中指定的默認(rèn)別名是工作區(qū)字母A~J,其后面的工作區(qū)所對應(yīng)的別名為W11~W32767。

      另外還可以在USE命令中通過ALIAS短語指定表別名。

      例如:USE學(xué)生表IN 1 ALIAS student,為學(xué)生表指定了別名student??键c(diǎn)18 使用不同工作區(qū)的表

      除了使用SELECT命令切換不同的工作區(qū)之外,也可以在一個(gè)工作區(qū)使用其他工作區(qū)的數(shù)據(jù)表。即通過短語:IN nWorkArea|cTableAlias。在表別名后加上“.”或“->”操作符,可在一個(gè)工作區(qū)中直接調(diào)用其他工作區(qū)中數(shù)據(jù)表的記錄。例如當(dāng)前工作區(qū)號(hào)為2,要調(diào)用1區(qū)上學(xué)生表中的班級(jí)號(hào)的相關(guān)字段,可使用命令:

      學(xué)生表.班級(jí)號(hào) 或?qū)W生表->班級(jí)號(hào)或A.班級(jí)號(hào)或A->班級(jí)號(hào) 考點(diǎn)19 表之間的關(guān)聯(lián)

      使用SET RELATION命令建立表間記錄指針的臨時(shí)聯(lián)系(關(guān)聯(lián))。

      格式:SET RELATION TO eExpressionl INTO nWorkAreal I cTableAliasl。

      說明:eExpressionl是指建立臨時(shí)聯(lián)系的索引關(guān)鍵字,一般是父表的主索引,子表的普通索引。用工作區(qū)號(hào) nWorkAreal或表的別名cTableAlias I說明臨時(shí)聯(lián)系是由當(dāng)前工作區(qū)的表到哪個(gè)表。

      利用SET RELATION TO命令將取消當(dāng)前表到所有表的臨時(shí)聯(lián)系。

      全國計(jì)算機(jī)等級(jí)考試二級(jí)VF考點(diǎn)分析之關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言SQL 5.1 SQL概述 考點(diǎn)1 概述

      1概念

      SQL是結(jié)構(gòu)化查詢語言Structured Query Language的縮寫。它包括數(shù)據(jù)查詢、數(shù)據(jù)定義、數(shù)據(jù)操縱和數(shù)據(jù)控制4部分。Visual FoxPro在SQL方面支持?jǐn)?shù)據(jù)定義、數(shù)據(jù)查詢和數(shù)據(jù)操縱功能。另外,由于Visual FoxPro自身在安全控制方面的缺陷,所以它沒有提供數(shù)據(jù)控制功能。

      SQL語言的特點(diǎn)

      (1)一種一體化的語言。

      (2)一種高度非過程化的語言。

      (3)語言非常簡潔。

      (4)可以直接以命令方式交互使用,也可以以程序方式使用。5.2 查詢功能

      SQL的核心是查詢,基本形式由SELECT-FROM-WHERE查詢塊組成,多個(gè)查詢塊可嵌套執(zhí)行,如表5-1所示。

      表5-1 SQL命令動(dòng)詞

      考點(diǎn)2 簡單查詢

      1簡單查詢

      簡單查詢是由SELECT和FROM短語構(gòu)成的無條件查詢,或由SELECT,F(xiàn)ROM和WHERE短語構(gòu)成的條件查詢。

      2簡單的連接查詢

      連接是關(guān)系的基本操作之一,連接查詢是一種基于多個(gè)關(guān)系的查詢。

      3嵌套查詢

      嵌套查詢所要求的結(jié)果出自一個(gè)關(guān)系,但關(guān)系的條件卻涉及多個(gè)關(guān)系。其內(nèi)層基本上也是一個(gè)SELECT-FROM-WHERE查詢語句。這種簡單嵌套查詢,可使用謂詞IN或NOT IN來判斷在外層的查詢條件中是否包含內(nèi)層查詢的結(jié)果??键c(diǎn)3 特殊運(yùn)算符號(hào)

      BETWEEN?AND?

      含義:該查詢的條件是在??范圍之內(nèi),相當(dāng)于用AND連接的一個(gè)邏輯表達(dá)式。

      LIKE

      含義:它是一個(gè)字符串匹配運(yùn)算符,與之搭配使用的通配符包括“*”和“?”??键c(diǎn)4 排序

      使用SQL SELECT可以將查詢結(jié)果進(jìn)行排序,排序的短語是ORDER BY。

      格式:ORDER BY Order_Item[ASCIDESC][,Order_Item[ASC|DESC]?]

      說明:可以按升序(ASC)或降序(DESC)排序,允許按一列或多列排序??键c(diǎn)5 計(jì)算查詢

      1簡單的計(jì)算查詢

      SQL不僅具有一般的檢索能力,而且還有計(jì)算方式的檢索,用于計(jì)算檢索的函數(shù)有:COUNT(計(jì)數(shù))、SUM(求和)、AVG(計(jì)算平均值)、MAX(求最大值)及MIN(求最小值)。

      2分組與計(jì)算查詢

      在SQL SELECT中可以利用GROUP BY子句進(jìn)行分組計(jì)算查詢。

      格式:GROUP BY GroupColumn[,GroupColumn?][HAVING FilterCondition]

      說明:可以按一列或多列分組,還可以用HAVING子句進(jìn)一步限定分組的條件。它必須跟在GROUP BY子句之后,不可單獨(dú)使用,與WHERE子句并不矛盾。考點(diǎn)6 別名和自連接查詢

      (1)SQL語句允許在二OM短語中為關(guān)系定義別名,格式為:一 <關(guān)系名><別名>

      (2)SQL不僅可以對多個(gè)關(guān)系進(jìn)行連接操作,也可以將同一關(guān)系與其自身進(jìn)行連接,這種連接就稱為自連接。在關(guān)系的自連接操作中,別名是必不可少的??键c(diǎn)7 使用量詞和謂詞的查詢

      與嵌套查詢或子查詢有關(guān)的運(yùn)算符,除了IN和NOT IN運(yùn)算符外,還有兩類與子查詢有關(guān)的運(yùn)算符,它們有以下兩種格式。

      (1)<表達(dá)式><比較運(yùn)算符>[ANY I ALL | SOME](子查詢)

      (2)[NOT]EXISTS(子查詢)

      EXISTS是謂詞,EXISTS或NOT EXISTS是用來檢查在子查詢中是否有結(jié)果返回,即存在元組或不存在元組。其本身并沒有進(jìn)行任何運(yùn)算或比較,只用來返回子查詢結(jié)果。考點(diǎn)8 超鏈接查詢

      (1)在新的SQL標(biāo)準(zhǔn)中支持兩個(gè)新的關(guān)系連接運(yùn)算符,這兩個(gè)新的連接運(yùn)算是左連接(*=)和右連接=*):首先保證一個(gè)表中滿足條件的元組都在結(jié)果表中,然后將滿足連接條件的元組與另一個(gè)表的元組進(jìn)行連接,不滿足連接條件的則應(yīng)將來自另一個(gè)表的屬性值置為空值。在一般SQL中超鏈接運(yùn)算符是“*=”(左連接)和“=*”(右連接)。

      (2)在Visual FoxPro中不支持超鏈接運(yùn)算符“*=”和“=*”,Visual FoxPro有專門的連接運(yùn)算。下面拼出SQL中超鏈接的部分語句格式:

      SELECT? FROM Table INNER|LEFT|RIGHT|FULL JOIN Table ON JoinCondition WHERE?

      考點(diǎn)9 Visual FoxPro中SQL SELECT的幾個(gè)特殊選項(xiàng)

      (l)顯示部分結(jié)果,格式為: TOP nExpr[PERCENT]

      (2)將查詢結(jié)果存放到數(shù)組中,格式為: INTO ARRAY ArrayName

      (3)將查詢結(jié)果存放到臨時(shí)文件中,格式為: INTO CURSOR CursorName

      (4)將查詢結(jié)果存放到永久表中,格式為: INTO DBF|TABLE TableName

      (5)將查詢結(jié)果存放到文本文件中,格式為: TO FILE FileName[ADDITIVE]

      (6)將查詢結(jié)果直接輸出到打印機(jī),格式為: TO PRINTER[PROMPT] 5.3 操作功能 考點(diǎn)10 插入

      Visual FoxPro支持兩種SQL插入命令的格式,一種是標(biāo)準(zhǔn)格式,另一種是特殊格式。

      1標(biāo)準(zhǔn)格式

      INSERT INTO dbf name[(frame 1[,fname2,?])] VALUES(eExpressionl[,eExpression2,?])

      2特殊格式

      INSERT INTO dbf _name FROM ARRAY ArrayName|FROM MEMVAR 考點(diǎn)11 更新

      SQL的數(shù)據(jù)更新命令格式如下: UPDATE TableName

      SET Column_Namel=eEpressionl[,Column_Name2=eExpression2?] WHERE Condition

      說明:利用WHERE字句指定條件,以更新滿足條件的一些記錄的字段值,并巨一次可更新多個(gè)字段;如果不使用WHERE子句,則更新全部記錄??键c(diǎn)12 刪除

      SQL從表中刪除數(shù)據(jù)的命令格式如下: DELETE FROM TableName[WHERE Condition]

      說明:FROM指定從哪個(gè)表中刪除記錄,WHERE指定被刪除的記錄所滿足的條件,如果不使用WHERE子句,則刪除該表中的全部記錄。小提示:

      當(dāng)一個(gè)表定義一個(gè)主索引或候選索引后,由于相應(yīng)的字段具有關(guān)鍵字的特性,即不能為空,所以只能用此命令插入記錄、)APPEND和INSERT都是插入一條空白記錄再輸入各字段的值,故不能用它們來插入記錄。5.4 定義功能 考點(diǎn)13 表的定義

      利用SQL命令建立的數(shù)據(jù)表同樣可以完成在表設(shè)計(jì)器中設(shè)計(jì)表的所有功能。

      格式:CREATE TABLE I DBF TableNamel[NAME LongTableName][FREE](FieldNarnel FieldType[(nFieldWidth[,nPrecision])][NULL |NOT NULL] [CHECK IExpressionl [ERROR cMessageTextl]] [DEFAULT eExpressionl] [PRIMARY KEY I UNIQUE] [PEFERENCES TableName2[AG TagName1]] [NOCPTRANS] [,F(xiàn)ieldName2?]

      [,PRIMARY KEY eEpression2 TAG TagName2|,UNIQUE eExpression3 TAG TagName3] [,F(xiàn)OREIGN KEY eExpression4 TagName4[NODUP] REFERENCES TableName3 [TAG TagName5]] [,CHECK lExpression2[ERROR cMessageText2]])|FROM ARRAY ArravNasne

      說明:此命令除了建立表的基本功能外,還包括滿足實(shí)體完整性的主關(guān)鍵字(主索引)PRIMARY KEY、定義域完整性的CHECK約束及出錯(cuò)提示信息ERROR、定義默認(rèn)值DEFAULT等,另外還有描述表之間聯(lián)系的FOREIGN KEY和REFERENCES等??键c(diǎn)14 表的刪除

      利用SQL命令刪除表,可直接使用語句,格式為: DROP TABLE Table_name

      說明:如果刪除的是自由表,則應(yīng)該將當(dāng)前打開的數(shù)據(jù)庫先關(guān)閉,才能進(jìn)行刪除。如果刪除數(shù)據(jù)庫表,則要先打開數(shù)據(jù)庫,在數(shù)據(jù)庫中進(jìn)行操作二否則,即使刪除了數(shù)據(jù)庫表,但記錄在數(shù)據(jù)庫中的信息并沒有被刪除,此后會(huì)出現(xiàn)錯(cuò)誤提示??键c(diǎn)15 表結(jié)構(gòu)的修改

      修改表結(jié)構(gòu)的命令是ALTER TABLE,該命令有3種格式。

      (1)ALTER TABLE TableNamel ADD| ALTER[COLUMN]FieldNamel FieldTvpe[(nFieldWidth[,nPrecision])][NULL |NOT NULL] [CHECK lExpressionl[ERROR cMessageTextl ]][DEFAULT eExpressionl] [PRIMARY KEY |UNIQUE] [REFERENCES TableName2[TAG TagNamel〕]

      (2)ALTER TABLE TableNamel ALTER[COLUMN]FieldName2[NULL|NOT NULL] [SET EFAULTeExpression2][SET CHECK lExpression2[ERROR cMessageText2] [DROP 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 FOREIGN KEY[eExpression5] TAG TagName4[FOR lExpression6] REFERENCES TableName2[TAG TagName5]] [DROP FOREIGN KEY TAG TagName6[SAVE]] [RENAME COLUMN FieldName4 TO FieldName5] 考點(diǎn)16 視圖的定義

      1視圖的概念及其定義

      (l)視圖的概念。

      Visual FoxPro中視圖是一個(gè)虛擬的表,可以是本地的、遠(yuǎn)程的或帶參數(shù)的。

      (2)視圖的定義,格式為:

      CREATE VIEW view name[(column_name[,column_name]?)] AS select_statement

      2從單個(gè)表派生出來的視圖

      視圖一經(jīng)定義,就可以和基本表一樣進(jìn)行各種查詢,也可以進(jìn)行一些修改操作。對于最終用戶來說,有時(shí)并不需要知道操作的是基本表還是視圖。

      3從多個(gè)表派生出來的視圖

      視圖一方面可以限定對數(shù)據(jù)的訪問,另一方面又可以簡化對數(shù)據(jù)的訪問。

      4視圖的刪除

      視圖由于是從表派生出來的,所以不存在修改結(jié)構(gòu)的問題,但是視圖可以刪除。

      格式:DROP VIEW<視圖名>

      5關(guān)于視圖的說明

      在關(guān)系數(shù)據(jù)庫中,視圖始終不真正含有數(shù)據(jù),它總是原有表的一個(gè)窗口。所以,雖然視圖可以像表一樣進(jìn)行各種查詢,但是插入、更新和刪除操作在視圖上卻有一定限制。在一般情況下,當(dāng)一個(gè)視圖是由單個(gè)表導(dǎo)出時(shí)可以進(jìn)行插入和更新操作,但不能進(jìn)行刪除操作;當(dāng)視圖是從多個(gè)表導(dǎo)出時(shí),插入、更新和刪除操作都不允許進(jìn)行。這種限制是很有必要的,它可以避免一些潛在問題的發(fā)生。

      全國計(jì)算機(jī)等級(jí)考試二級(jí)VF考點(diǎn)分析之查詢與視圖(第六章)

      6.1 查詢 考點(diǎn)1 查詢設(shè)計(jì)器

      1查詢的概念

      查詢是從指定的表或視圖中提取滿足條件的記錄,然后按照想得到的輸出類型定向輸出查詢結(jié)果。查詢以擴(kuò)展名為QPR的文件保存在磁盤上的,這是一個(gè)文本文件,它的主體是SQL SELECT語句。

      2查詢的建立

      建立查詢可以使用“查詢設(shè)計(jì)器”,但它的基礎(chǔ)是SQL SELECT語句。建立查詢的方法有以下幾個(gè)方面。

      (l)可以利用CREATE QUERY命令打開查詢設(shè)計(jì)器建立查詢。

      (2)可以利用“新建”對話框打開查詢設(shè)計(jì)器建立查詢。

      (3)可以在項(xiàng)目管理器的“數(shù)據(jù)”選項(xiàng)卡中打開查詢設(shè)計(jì)器建立查詢。

      (4)可直接編輯QPR文件建立查詢。

      建立查詢時(shí),首先進(jìn)入如圖6-1所示的界面選擇用于建立查詢的表或視圖,選擇表或視圖后,單擊“添加”按鈕。最后單擊“關(guān)閉”按鈕,進(jìn)入如圖6-2所示的查詢設(shè)計(jì)器界面。

      圖6-1 為查詢選擇表或視圖

      查詢設(shè)計(jì)器中的各選項(xiàng)卡和SQL SELECT語句的各短語是相對應(yīng)的,對應(yīng)關(guān)系如下。

      “字段”――SELECT短語,用于指定要查詢的數(shù)據(jù)

      “連接”――JOIN ON短語,用于編輯連接條件。

      “篩選”――WHERE短語,用于指定查詢條件。

      “排序依據(jù)”――ORDER BY短語,用于指定排序字段和排序方式。

      “分組依據(jù)”――GROUP BY短語和HAVING短語,用于分組。

      圖6-2 查詢設(shè)計(jì)器

      3查詢的運(yùn)行

      運(yùn)行查詢有下列兩種方法。

      (1)可以在項(xiàng)口管理器的“數(shù)據(jù)”選項(xiàng)卡中,展開“查詢”選項(xiàng),然后選擇要運(yùn)行的查詢文件,單擊“運(yùn)行”按鈕,可查看查詢結(jié)果。

      (2)在命令窗門執(zhí)行命令DO QueryFile。

      注意:此處的查詢文件名是全名,包括擴(kuò)展名QPR。

      4查詢?nèi)ハ?/p>

      設(shè)計(jì)查詢的目的不只是完成一種查詢功能,在查詢設(shè)計(jì)器中可以根據(jù)需要為查詢輸出定位查詢?nèi)ハ?。通過“查詢”菜單卜的“查詢?nèi)ハ颉?,或在“查詢設(shè)計(jì)器”工具欄中單擊“查詢?nèi)ハ颉卑粹o。“查詢?nèi)ハ颉睂υ捒蛉鐖D6-3所示

      圖6-3 “查詢?nèi)ハ颉睂υ捒?/p>

      各去向的含義如下。

      (1)瀏覽:在“瀏覽"(BROWSE)窗口中顯示查詢結(jié)果,這是默認(rèn)的輸出去向。

      (2)臨時(shí)表:將查詢結(jié)果存儲(chǔ)于一個(gè)命名的臨時(shí)只讀表中。

      (3)表:將結(jié)果保存在一個(gè)命名的數(shù)據(jù)表文件中。

      (4)圖形:查詢結(jié)果可以用于Microsoft Graph。

      (5)屏幕:在Visual FoxPro主窗口或當(dāng)前活動(dòng)輸出窗口中顯示查詢結(jié)果。

      (6)報(bào)表:將結(jié)果輸出到一個(gè)報(bào)表文件。

      (7)標(biāo)簽:將結(jié)果輸出到一個(gè)標(biāo)簽文件。小提示:

      在7種輸出去向中,只有“瀏覽”和“屏幕”兩種輸出去向才能直接看到查詢結(jié)果。6.2 視圖

      考點(diǎn)2 視圖的概念與建立

      1視圖的概念

      視圖是操作表的一種手段,通過視圖可以查詢表,也可以更新表。視圖是根據(jù)表定義的,因此視圖基于表,而視圖可以使應(yīng)用更靈活,因此它又超越表。視圖是數(shù)據(jù)庫中的一個(gè)特有功能,只有在包含視圖的數(shù)據(jù)庫打開時(shí)才能使用。

      視圖兼有“表”和“查詢”的特點(diǎn),與查詢相類似的地方是可以用來從一個(gè)或多個(gè)相關(guān)聯(lián)的表中提取有用信息;與表類似的地方是可以用來更新其中的信息,并將結(jié)果永久性保存在磁盤上。

      2視圖的建立

      (l)用CREATE VIEW命令打開視圖設(shè)計(jì)器建立視圖。

      (2)利用“新建”對話框打開視圖設(shè)計(jì)器建立視圖。

      (3)在項(xiàng)目管理器的“數(shù)據(jù)”選項(xiàng)卡中打開視圖設(shè)計(jì)器建立視圖。

      (4)利用SQL命令CREATE VIEW...AS...建立視圖。

      3視圖設(shè)計(jì)象

      視圖設(shè)計(jì)器(如圖6一所示)與查詢設(shè)計(jì)器基本上一樣,主要有以下幾點(diǎn)不同。

      (1)視圖的結(jié)果保存在數(shù)據(jù)庫中,在磁盤上找不到類似的文件。

      (2)視圖可以用來更新數(shù)據(jù),因此在設(shè)計(jì)器中多了一個(gè)“更新條件”選項(xiàng)卡。

      (3)在視圖中沒有“查詢?nèi)ハ颉钡膯栴}。

      圖6-4 視圖設(shè)計(jì)器 考點(diǎn)3 遠(yuǎn)程視圖與連接

      為了建立遠(yuǎn)程視圖,必須首先建立連接遠(yuǎn)程數(shù)據(jù)庫的“連接”,“連接”是Visual FoxPro數(shù)據(jù)庫中的一種對象。

      1定義數(shù)據(jù)源和連接

      數(shù)據(jù)源一般是ODBC數(shù)據(jù)源,開放數(shù)據(jù)庫互連ODBC是一種連接數(shù)據(jù)庫的通用標(biāo)準(zhǔn)。為了定義ODBC數(shù)據(jù)源,必須首先安裝ODBC驅(qū)動(dòng)程序。

      2建立連接

      建立連接的方法有以下幾種。

      (1)用CREATE CONNECTION命令打開“連接設(shè)計(jì)器”,或完全用命令方式建立連接。

      (2)通過“新建”對話框建立連接。

      (3)在項(xiàng)目管理器的“數(shù)據(jù)”選項(xiàng)卡中建立連接。

      3設(shè)計(jì)遠(yuǎn)程視圖

      利用數(shù)據(jù)源或連接建立的遠(yuǎn)程視圖的SQL語法要符合遠(yuǎn)程數(shù)據(jù)庫的語法,例如,SQL Server的語法和Visual FoxPro的語法就有所區(qū)別??键c(diǎn)4 視圖與數(shù)據(jù)更新

      視圖是根據(jù)基本表派生出來的,所以把它叫做虛擬表為了通過視圖能夠更新基本表中的數(shù)據(jù),需要在視圖設(shè)計(jì)器的“更新條件”選項(xiàng)卡中的左下角選中“發(fā)送SQL更新”復(fù)選框。

      1指定可更新的表

      如果視圖是基于多個(gè)表的,默認(rèn)可以更新“全部表”的相關(guān)字段,如果要指定只能更新某個(gè)表的數(shù)據(jù),則可以通過“表”下拉列表框選擇表

      2指定可更新的字段

      在“字段名”列表框中列出了與更新有關(guān)的字段,在字段名左側(cè)有兩列標(biāo)志,“鑰匙”表示關(guān)鍵字,“鉛筆”表示更新通過單擊相應(yīng)列可以改變相關(guān)的狀態(tài),默認(rèn)可以更新所有非關(guān)鍵字字段,并且通過基本表的關(guān)鍵字完成更新,即Visual FoxPro用這些關(guān)鍵字字段來唯一標(biāo)識(shí)那些已在視圖中修改過的基本表中的記錄建議不要改變關(guān)鍵字的狀態(tài),不要試圖通過視圖來更新基本表中的關(guān)鍵字字段值,如有必要,可以指定更新非關(guān)鍵字字段值

      3檢查更新的合法性

      如圖6-1所示,“SQL WHERE子句包括”框中的選項(xiàng)決定哪些字段包含在UPDATE或DELETE語句的WHERE子句中,Visual FoxPro正是利用這些語句將在視圖中修改或刪除的記錄發(fā)送到遠(yuǎn)程數(shù)據(jù)源或基本表中,WHERE子句就是用來檢查自從提取記錄用于視圖中后,服務(wù)器上的數(shù)據(jù)是否已經(jīng)改變。

      “SQL WHERE子句包括”框中各選項(xiàng)的含義如下。

      (l)關(guān)鍵字段:當(dāng)基本表中的關(guān)鍵字字段被改變時(shí),更新失敗。

      (2)關(guān)鍵字和可更新字段:當(dāng)基本表中任何標(biāo)記為可更新的字段被改變時(shí),更新失敗。

      (3)關(guān)鍵字和已修改字段:當(dāng)在視圖中改變的任一字段的值在基本表中已被改變時(shí),更新失敗。

      (4)關(guān)鍵字和時(shí)間戳:當(dāng)遠(yuǎn)程表上記錄的時(shí)間戳在首次檢索之后被改變時(shí),更新失敗。

      4使用更新方式

      “使用更新”框的選項(xiàng)決定當(dāng)向基本表發(fā)送SQL更新時(shí)的更新方式。

      (1)SQL DELETE然后INSERT:先用SQL DELETE命令刪除基本表中被更新的舊記錄,再用SQL INSERT命令向基本表中插入更新后的記錄。

      (2)SQL UPDATE:使用SQL UPDATE命令更新基本表。考點(diǎn)5 使用視圖

      視圖建立后,不但可以用它來顯示和更新數(shù)據(jù),而且可以通過調(diào)整它的屬性來提高性能,它的使用類似于表。

      1視圖操作

      (1)在數(shù)據(jù)庫中使用USE命令打開或關(guān)閉視圖。

      (2)在“瀏覽器”窗口中顯示或修改視圖中的記錄。

      (3)使用SQL語句操作視圖。

      (4)在文本框、表格控件、表單或報(bào)表中使用視圖作為數(shù)據(jù)源。

      2使用視圖

      視圖一經(jīng)建立就基本可以像基本表一樣使用,適用于基本表的命令基本都可以用于視圖。比如在視圖上也可以建立索引,此索引當(dāng)然是臨時(shí)的,視圖一關(guān)閉,索引自動(dòng)刪除,多工作區(qū)時(shí)也可以建立聯(lián)系等。但視圖不可以用MODIFY STRUCTURE命令修改結(jié)構(gòu)。因?yàn)橐晥D畢竟不是獨(dú)立存在的基本表,它是由基本表派生出來的,只能修改視圖的定義。

      小提示:

      查詢與視圖的區(qū)別是:查詢可以定義輸出去向,可以將查詢的結(jié)果靈活地應(yīng)用于表單、報(bào)表、圖形等各種場合,但是利用查詢不可以修改數(shù)據(jù);而利用視圖可以修改數(shù)據(jù),可以利用SQL將對視圖的修改發(fā)送到基本表,特別是對于遠(yuǎn)程表的操作,利用視圖是非常有效的。

      全國計(jì)算機(jī)等級(jí)考試二級(jí)VF考點(diǎn)分析之程序設(shè)計(jì)基礎(chǔ)(第七章)7.l 程序與程序文件

      考點(diǎn)1 程序的概念、建立與執(zhí)行

      1程序的概念

      程序是能夠完成一定任務(wù)的命令集合。這組命令被存放在稱為程序文件或命令文件的文本文件中。當(dāng)運(yùn)行程序時(shí),系統(tǒng)會(huì)按照一定的次序自動(dòng)執(zhí)行包含在程序文件中的命令。

      2程序文件的建立與修改

      程序文件的建立與修改一般是通過調(diào)用系統(tǒng)內(nèi)置的文本編輯器來進(jìn)行的。其建立步驟如下。

      (l)打開文本編輯窗口。

      (2)在文本編輯窗口中輸入程序內(nèi)容,此處所輸入的程序命令不會(huì)馬上被執(zhí)行。

      (3)編輯完成后,從“文件”菜單中選擇“保存”命令或按快捷鍵Ctrl+W保存程序文件。

      3打開或修改程序文件的方法

      (1)從“文件”菜單中選擇“打開”命令,彈出“打開”對話框。

      (2)在“文件類型”列表框中選擇“程序”。

      (3)在文件列表框中選定要修改的文件,并單擊“確定”按鈕。

      (4)編輯修改后,從“文件”菜單中選擇“保存”命令或按快捷鍵Ctrl+W保存程序文件,若要放棄修改,可直接按Esc鍵,或從“文件”菜單中選擇“還原”命令。

      4程序文件的執(zhí)行

      程序文件建立后,可使用多種方式、多次執(zhí)行它,常用的以下有兩種方式。

      (l)菜單方式。

      (2)命令方式。考點(diǎn)2 簡單的輸入輸出命令

      程序一般都包含數(shù)據(jù)輸入、數(shù)據(jù)處理和數(shù)據(jù)輸出3個(gè)部分。

      INPUT命令

      格式:INPUT[<字符表達(dá)式>]TO<內(nèi)存變量>

      功能:該命令等待用戶從鍵盤輸入數(shù)據(jù),當(dāng)用戶回車后,系統(tǒng)將表達(dá)式的值存入指定的內(nèi)存變量。

      注釋:輸入的數(shù)據(jù)可以是常量、變量,也可以是更為一般的表達(dá)式。但不能不輸入任何內(nèi)容直接按回車鍵輸入字符串時(shí)必須加定界符,輸入邏輯型常量時(shí)要用圓點(diǎn)定界(如.T.,.F.),則輸入日期時(shí)間型常量時(shí)要用大括號(hào)(如{^2001-03-01})。

      ACCEPT命令

      格式:ACCEPT[<字符表達(dá)式>]TO<內(nèi)存變量>

      功能:該命令等待用戶從鍵盤輸入字符串,當(dāng)用戶回車后,系統(tǒng)將表達(dá)式的值存入指定的內(nèi)存變量。

      注釋:該命令只能接收字符串。用戶在輸入字符串時(shí)不需要加定界符;否則,系統(tǒng)會(huì)把定界符作為字符串本身的一部分。如果不輸入任何內(nèi)容而直接按回車鍵,系統(tǒng)會(huì)把空串賦給指定的內(nèi)存變量。

      WAIT命令

      格式:WAIT[<字符表達(dá)式>][TO<內(nèi)存變量>][WINDOW[AT<行>,<列>]] [NOWAIT][CLEARINOCLEAR][TIMEOUT<數(shù)值表達(dá)式>]

      功能:該命令顯示字符表達(dá)式的值作為提示信息,暫停程序的執(zhí)行,直到用戶按任意鍵或單擊鼠標(biāo)時(shí)繼續(xù)程序運(yùn)行。

      注釋:<內(nèi)存變量>用來保存用戶輸入的字符,其類型為字符型。若用戶按的是Enter鍵或單擊了鼠標(biāo),那么<內(nèi)存變量>中保存的將是空串若不選TO <內(nèi)存變量>短語,則輸入的單字符不保留。小提示:

      如果用DO命令執(zhí)行查詢文件、菜單文件,在文件名中必須要包括擴(kuò)展名(QPR、MPR)。7.2 程序的基本結(jié)構(gòu)

      程序結(jié)構(gòu)是指程序中命令或語句執(zhí)行的流程結(jié)構(gòu),包括3種基本結(jié)構(gòu):順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。考點(diǎn)3 順序結(jié)構(gòu)

      順序結(jié)構(gòu)是最簡單的程序結(jié)構(gòu),它是按命令在程序中出現(xiàn)的先后次序依次執(zhí)行。考點(diǎn)4 選擇結(jié)構(gòu)

      支持選擇結(jié)構(gòu)的語句包括條件語句和分支語句。

      1條件語句

      格式: IF<條件> <語句序列1> [ELSE> <語句序列2>] ENDIF

      功能:該語句根據(jù)<條件>是否成立從兩組代碼中選擇一組執(zhí)行。

      語句的執(zhí)行流程圖如圖7-1和圖7-2所示。

      圖7-1有ELSE的選擇語句

      圖7-2無ELSE的選擇語句

      2分支語句

      格式:DO CASE CASE<條件1> <語句序列1> CASE<條件2> <語句序列2> ??

      CASE<條件n> <語句序列n> [OTHERWISE <語句序列>] ENDCASE

      功能:語句執(zhí)行時(shí),依次判斷CASE后面的條件是否成立。分支語句實(shí)現(xiàn)的是一種擴(kuò)展的選擇結(jié)構(gòu),可以根據(jù)條件從多組代碼中選擇一組執(zhí)行。分支語句的流程如圖7-3所示。

      圖7-3 多分支語句 考點(diǎn)5 循環(huán)結(jié)構(gòu)

      循環(huán)結(jié)構(gòu)也稱為重復(fù)結(jié)構(gòu),是指程序在執(zhí)行的過程中,其中的某段代碼被重復(fù)執(zhí)行若一干珠。被重復(fù)執(zhí)行的代碼段,通常稱為循環(huán)體。Visual FoxPro支持循環(huán)結(jié)構(gòu)的語句包括:DO WHILE-ENDDO、FOR-ENDFOR和SCAN-ENDSCAN。

      DO WHILEENDFOR語句 格式:

      FOR<循環(huán)變量>=<初值>TO<終值>[STEP<步長>] <循環(huán)體> ENDFOR

      功能:首先將初值賦給循環(huán)變量,然后判斷循環(huán)條件是否成立(若步長為正值,則循環(huán)條件為<循環(huán)變量><=<終值>;若步長為負(fù)值,則循環(huán)條件為<循環(huán)變量>>=<終值>)。如果成立,則執(zhí)行循環(huán)體,然后循環(huán)變量增加一個(gè)步長值,并再次判斷循環(huán)條件,一直到條件為假時(shí),退出循環(huán)體。該語句通常用于實(shí)現(xiàn)循環(huán)次數(shù)已知情況下的循環(huán)結(jié)構(gòu)〕

      SCAN-ENDSCAN語句

      格式:

      SCAN[<范圍>][FOR<條件1>][WHERE<條件2>] <循環(huán)體> ENDSCAN

      功能:該循環(huán)語句一般用于處理表中記錄,語句可指明需要處理的記錄范圍及應(yīng)滿足的條件。執(zhí)行該語句時(shí),記錄指針自動(dòng)、依次地在當(dāng)前表的指定范圍內(nèi)滿足條件的記錄上移動(dòng),對每一條記錄執(zhí)行循環(huán)體內(nèi)的命令。

      7.3 多模塊程序

      模塊是一個(gè)相對獨(dú)立的程序段,它可以被其他模塊調(diào)用,也可以調(diào)用其他模塊。通常,把被其他模塊調(diào)用的模塊稱為子程序,把調(diào)用其他模塊而沒有被其他模塊調(diào)用的模塊稱為主程序。應(yīng)用程序一般都是多模塊程序,包含多個(gè)程序模塊??键c(diǎn)6 模塊的定義和調(diào)用

      1模塊的定義

      在Visual FoxPro中,模塊可以是命令文件,也可以是過程。過程定義的語句格式為: PROCEDURE|FUNCTION<過程名> <命令序列> [RETURN[<表達(dá)式>]] [ENDPROCIENDFUNC]

      功能說明如下。

      (1)PROCEDURE|FUNCTION命令表示一個(gè)過程的開始,并命名過程。過程名必須以字母或下劃線開頭,可以包含數(shù)字、字母和下劃線。

      (2)當(dāng)程序執(zhí)行到RETURN命令時(shí),控制將轉(zhuǎn)回到調(diào)用處(或命令窗口),并返回表達(dá)式的值。若默認(rèn)RETURN命令,系統(tǒng)將在過程結(jié)束處自動(dòng)調(diào)用一條隱含的RETURN命令。

      (3)ENDPROC|ENDFUNC命令表示一個(gè)過程的結(jié)束。如果默認(rèn)此語句,那么過程結(jié)束于下一條PROCEDURE|FUNCTION命令或文件尾。

      2模塊的調(diào)用

      模塊調(diào)用的格式有兩種。

      (1)使用DO命令,格式如下。DO<文件名>|<過程名>

      (2)在名字后加一對小括號(hào),格式如下。<文件名>|<過程名>()

      3打開過程文件

      命令格式如下。

      SET PROCEDURE TO[<過程文件1>[,<過程文件2>,?][ADDITIVE]

      4關(guān)閉過程文件

      命令格式如下。

      RELEASE PROCEDURE<過程文件1>[,<過程文件2>,?] 考點(diǎn)7 參數(shù)傳遞

      模塊程序可以接收調(diào)用程序傳遞過來的參數(shù)。

      (1)PARAMETERS<形參變量1>[,<形參變量2>,?]。

      (2)LPARAMETERS<形參變量1>[,<形參變量2>,?]。

      說明PARAMETERS聲明的形參被看做是模塊程序中建立的私有變量,LPARAMETERS聲明的形參被看做是模塊程序中建立的局部變量。除此之外,兩條命令無其他區(qū)別。

      不管是PARAMETERS或LPARAMETERS,都應(yīng)該是模塊程序的第一條可執(zhí)行命令。

      (1)調(diào)用參數(shù)調(diào)用模塊程序參數(shù)的格式如下。

      DO<文件名>|<過程名>WITH<實(shí)參1>[,<實(shí)參2>,?] <文件名>|<過程名>(<實(shí)參1>[,<實(shí)參2>,?])

      說明:實(shí)參可以是常量、變量或一般表達(dá)式,調(diào)用模塊程序時(shí),形參的數(shù)目不能少于實(shí)參的數(shù)目,當(dāng)形參數(shù)目多于實(shí)參數(shù)目時(shí),多余的形參取初值邏輯假.F.。

      (2)參數(shù)的傳遞。模塊中參數(shù)的傳遞分為兩種:按值傳遞(實(shí)參一般為常量和表達(dá)式)和引用傳遞(實(shí)參一般為變量)。參數(shù)的傳遞方式可以重新設(shè)置,格式如下。SET UDFPARMS TO VALUE|REFERENCE 考點(diǎn)8 變量的作用域

      變量的一個(gè)重要屬性是作用域。變量的作用域指的是變量在什么范圍內(nèi)是有效或能夠被訪問的。在Visual FoxPro中,可分為公共變量、私有變量和局部變量3類。

      1.公共變量

      在任何模塊中都可使用的變量稱為公共變量,公共變量必須先定義后使用,格式如下。PUBLIC<內(nèi)存變量表>

      說明:該命令是建立公共的內(nèi)存變量,并賦以初值邏輯假.F.。建立好的公共變量一直有效,即使程序結(jié)束返回命令窗口也不會(huì)消失,只有執(zhí)行CLEAR MEMORY,RELEASE或QUIT等命令后,才能被釋放。

      2私有變量

      在程序中直接使用(沒有預(yù)先聲明),而由系統(tǒng)自動(dòng)隱含建立的變量都是私有變量。

      私有變量的作用域是建立它的模塊及其下屬的各層模塊。

      3局部變量

      局部變量只能在建立它的模塊中使用,不能在上層或下層模塊中使用。程序結(jié)束時(shí),自動(dòng)釋放局部變量。格式如下 LOCAL<內(nèi)存變量表>

      說明:該變量同樣給建立的內(nèi)存變量賦以初值邏輯假.F.,也必須先定義后使用。當(dāng)子程序中定義的變量名與主程序中同名時(shí),為避免子程序中的變量值改變主程序中的變量值,可在子程序中使用PRIVATE命令隱藏主程序中可能存在的變量,使這些變量在子程序中暫時(shí)無效。格式如下。

      (1)PRIVATE<內(nèi)存變量表>。

      (2)PRIVATE ALL[LIKE<通配符>|EXCEPT<通配符>]。

      說明:該命令并不建立內(nèi)存變量,它只是隱藏指定的在上層模塊中可能已經(jīng)存在的內(nèi)存變量,但是當(dāng)模塊程序返回到上層模塊時(shí),被隱藏的變量就自動(dòng)恢復(fù)有效性,保持原值。7.4 程序調(diào)試 考點(diǎn)9 調(diào)試器環(huán)境

      程序調(diào)試是指在發(fā)現(xiàn)程序有錯(cuò)誤的情況下,確定出錯(cuò)位置并糾正錯(cuò)誤。計(jì)算機(jī)一般能夠發(fā)現(xiàn)程序的出錯(cuò)位置,但對于計(jì)算機(jī)不能發(fā)現(xiàn)的錯(cuò)誤,只能由用戶自己來查錯(cuò)。Visual FoxPro提供的功能強(qiáng)大的調(diào)試工具—調(diào)試器,可幫助我們進(jìn)行這項(xiàng)工作。

      調(diào)用調(diào)試器的方法一般有兩種。

      (l)選擇“工具”菜單中的“調(diào)試器”命令。

      (2)在命令窗口中輸入DEBUG命令??键c(diǎn)10 設(shè)置斷點(diǎn)

      可以設(shè)置以下4種類型的斷點(diǎn)。

      (1)在定位處中斷:可指定一行代碼,當(dāng)程序調(diào)試執(zhí)行到該行時(shí),中斷程序運(yùn)行。

      (2)如果表達(dá)式值為真,則在定位處中斷:指定一行代碼及一個(gè)表達(dá)式,當(dāng)程序調(diào)試執(zhí)行到該行代碼時(shí),如果表達(dá)式值為真,就中斷程序運(yùn)行。

      (3)當(dāng)表達(dá)式值為真時(shí)中斷:可以指定一個(gè)表達(dá)式,在程序調(diào)試執(zhí)行過程中,當(dāng)該表達(dá)式值為邏輯真.T.時(shí),中斷程序運(yùn)行。

      (4)當(dāng)表達(dá)式值改變時(shí)中斷:可以指定一個(gè)表達(dá)式,在程序調(diào)試執(zhí)行過程中,當(dāng)該表達(dá)式值改變時(shí),中斷程序運(yùn)行??键c(diǎn)11 “調(diào)試”菜單

      “調(diào)試”菜單包含執(zhí)行程序、選擇執(zhí)行方式、終止程序執(zhí)行、修改程序,以及調(diào)整程序執(zhí)行速度等命令。各命令具體功能如下。

      (1)運(yùn)行:執(zhí)行在跟蹤窗口中打開的程序:

      (2)繼續(xù)執(zhí)行:當(dāng)程序被中斷時(shí),該命令可使程序在中斷處繼續(xù)往下執(zhí)行。

      (3)取消:終止程序的調(diào)試執(zhí)行,并關(guān)閉程序。

      (4)定位修改:終止程序的調(diào)試執(zhí)行,然后在文本編輯窗口中打開調(diào)試程序。

      (5)跳出:以連續(xù)方式而非單步方式繼續(xù)執(zhí)行被調(diào)用模塊程序中的代碼,然后在調(diào)用程序的調(diào)用語句的下一行處中斷。

      (6)單步:單步執(zhí)行下一行代碼。如果下一行代碼調(diào)用了過程或者方法程序,那么該過程或者方法程序在后臺(tái)執(zhí)行。

      (7)單步跟蹤:單步執(zhí)行下一行代碼。

      (8)運(yùn)行到光標(biāo)處:從當(dāng)前位置執(zhí)行代碼直至光標(biāo)處中斷。

      (9)調(diào)速:打開“調(diào)整運(yùn)行速度”對話框,設(shè)置兩代碼行執(zhí)行之間的延遲秒數(shù)。

      (10)設(shè)置下一條語句:程序中斷時(shí)選擇該命令,可使光標(biāo)所在行成為恢復(fù)執(zhí)行后要執(zhí)行的語句。

      全國計(jì)算機(jī)等級(jí)考試二級(jí)VF考點(diǎn)分析之表單設(shè)計(jì)與應(yīng)用(第八章)8.1 面向?qū)ο蟮母拍?考點(diǎn)1 對象與類

      1對象(Object)

      客觀世界里的任何實(shí)體都可以被視為對象。對象可以是具體事物,也可以指某些概念二

      (1)屬性:用來表示對象的狀態(tài)。

      (2)方法:用來描述對象的行為。

      2類(Class)

      類是對一類相似對象性質(zhì)的描述。同類對象具有相同的性質(zhì):相同的屬性及方法。考點(diǎn)2 子類與繼承

      第二篇:計(jì)算機(jī)等級(jí)考試二級(jí)VF考點(diǎn)分析

      計(jì)算機(jī)等級(jí)考試二級(jí)VF考點(diǎn)分析:VF基礎(chǔ)知識(shí)

      1.1 數(shù)據(jù)庫基礎(chǔ)知識(shí)

      考點(diǎn)1 計(jì)算機(jī)數(shù)據(jù)管理的發(fā)展

      1數(shù)據(jù)與數(shù)據(jù)處理

      數(shù)據(jù)是指存儲(chǔ)在某一種媒體上能夠識(shí)別的物理符號(hào)。數(shù)據(jù)處理的中心問題是數(shù)據(jù)管理。

      2計(jì)算機(jī)數(shù)據(jù)管理

      (l)人工管理。

      (2)文件系統(tǒng)。

      (3)數(shù)據(jù)庫系統(tǒng)。

      (4)分布式數(shù)據(jù)庫系統(tǒng)。

      (5)面向?qū)ο髷?shù)據(jù)庫系統(tǒng)。

      3數(shù)據(jù)庫管理系統(tǒng)

      為數(shù)據(jù)庫的建立、使用和維護(hù)而配置的軟件稱為數(shù)據(jù)庫管理系統(tǒng)DBMS(DataBase Management System)。

      圖1-1 數(shù)據(jù)庫系統(tǒng)中數(shù)據(jù)與程序的關(guān)系 考點(diǎn)2 數(shù)據(jù)庫系統(tǒng)

      1有關(guān)數(shù)據(jù)庫的概念

      (1)數(shù)據(jù)庫(DataBase):存儲(chǔ)在計(jì)算機(jī)存儲(chǔ)設(shè)備上、結(jié)構(gòu)化的相關(guān)數(shù)據(jù)的集合。

      (2)數(shù)據(jù)庫應(yīng)用系統(tǒng)(DBAS):是由系統(tǒng)開發(fā)人員利用數(shù)據(jù)庫系統(tǒng)資源開發(fā)出來的,面向某一類實(shí)際應(yīng)用的應(yīng)用軟件系統(tǒng)。

      (3)數(shù)據(jù)庫管理系統(tǒng)(DBMS):對數(shù)據(jù)實(shí)行專門管理,提供安全性和完整性等統(tǒng)一機(jī)制,可以對數(shù)據(jù)庫的建立、使用和維護(hù)進(jìn)行管理。

      (4)數(shù)據(jù)庫系統(tǒng)(DBS):是指引進(jìn)數(shù)據(jù)庫技術(shù)后的計(jì)算機(jī)系統(tǒng),實(shí)現(xiàn)有組織地、動(dòng)態(tài)地存儲(chǔ)大量相關(guān)數(shù)據(jù),提供數(shù)據(jù)處理和信息資源共享的便利手段。數(shù)據(jù)庫系統(tǒng)由硬件系統(tǒng)、數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)及相關(guān)軟件、數(shù)據(jù)庫管理員和用戶等部分組成。

      2數(shù)據(jù)庫系統(tǒng)的特點(diǎn)

      (l)實(shí)現(xiàn)數(shù)據(jù)共享,減少數(shù)據(jù)冗余。

      (2)采用特定的數(shù)據(jù)模型。

      (3)具有較高的數(shù)據(jù)獨(dú)立性。

      (4)具有統(tǒng)一的數(shù)據(jù)控制功能。考點(diǎn)3 數(shù)據(jù)模型

      1實(shí)體的描述

      (1)實(shí)體。

      (2)實(shí)體的屬性。

      (3)實(shí)體集和實(shí)體型。

      2實(shí)體間聯(lián)系及聯(lián)系的種類

      (1)一對一聯(lián)系。

      (2)一對多聯(lián)系。

      (3)多對多聯(lián)系。

      3數(shù)據(jù)模型簡介

      為了反映事物本身及事物之間的各種聯(lián)系,數(shù)據(jù)庫中的數(shù)據(jù)必須有一定的結(jié)構(gòu),這種結(jié)構(gòu)用數(shù)據(jù)模型來表示,通常有以下3種。

      (1)層次數(shù)據(jù)模型。

      (2)網(wǎng)狀數(shù)據(jù)模型。

      (3)關(guān)系數(shù)據(jù)模型。小提示:

      數(shù)據(jù)庫DB、數(shù)據(jù)庫系統(tǒng)DBS和數(shù)據(jù)庫管理系統(tǒng)DBMS之間的關(guān)系是DBS包括DB和DBMS。1.2 關(guān)系模型

      關(guān)系模型的用戶界面非常簡單,一個(gè)關(guān)系的邏輯結(jié)構(gòu)就是一張二維表。這種用二維表的形式表示實(shí)體和實(shí)體間聯(lián)系的數(shù)據(jù)模型稱為關(guān)系數(shù)據(jù)模型。

      1關(guān)系術(shù)語

      (l)關(guān)系:一個(gè)關(guān)系就是一張二維表,每個(gè)關(guān)系有一個(gè)關(guān)系名。在Visual FoxPro中一個(gè)關(guān)系存儲(chǔ)為一個(gè)文件,擴(kuò)展名為DBF,稱為“表”。

      對關(guān)系的描述稱為關(guān)系模式,一個(gè)關(guān)系模式對應(yīng)一個(gè)關(guān)系的結(jié)構(gòu),格式為: 關(guān)系名(屬性名1,屬性名2,?,屬性名n)

      (2)元組:在一個(gè)二維表中,水平方向的行稱為元組,每一行為一個(gè)元組。

      (3)屬性:將二維表中垂直方向的列稱為屬性,每一列都有一個(gè)屬性名。

      (4)域:屬性的取值范圍,即不同元組對同一個(gè)屬性的取值所限定的范圍。

      (5)關(guān)鍵字:屬性或?qū)傩缘慕M合,其值能夠唯一地標(biāo)識(shí)一個(gè)元組。在Visual FoxPro中,主關(guān)鍵字和候選關(guān)鍵字就起唯一標(biāo)志一個(gè)元組的作用。

      (6)外部關(guān)鍵字:如果表中一個(gè)字段不是本表的主關(guān)鍵字或候選關(guān)鍵字,而是另一個(gè)表的主關(guān)鍵字或候選關(guān)鍵字,那么這個(gè)字段(屬性)就稱為外部關(guān)鍵字。

      2關(guān)系的特點(diǎn)

      (1)關(guān)系必須規(guī)范化。

      (2)在同一個(gè)關(guān)系中不能出現(xiàn)同名屬性,Visual FoxPro中表示為字段名的不同。

      (3)關(guān)系中不允許有完全相同的元組,即冗余。

      (4)在一個(gè)關(guān)系中元組的次序無關(guān)緊要。

      (5)在一個(gè)關(guān)系中列的次序無關(guān)緊要??键c(diǎn)5 關(guān)系運(yùn)算

      對關(guān)系數(shù)據(jù)庫進(jìn)行查詢時(shí),需要找到用戶感興趣的數(shù)據(jù),這就需要對關(guān)系進(jìn)行一定的關(guān)系運(yùn)算,關(guān)系的基本運(yùn)算有兩類:傳統(tǒng)的集合運(yùn)算和專門的關(guān)系運(yùn)算。

      1傳統(tǒng)的集合運(yùn)算

      (1)并:兩個(gè)相同結(jié)構(gòu)關(guān)系的并是由屬于這兩個(gè)關(guān)系的全部元組組成的集合。

      (2)差:兩個(gè)相同結(jié)構(gòu)關(guān)系的差是由屬于前一個(gè)關(guān)系的元組而不屬于后一個(gè)關(guān)系的元組組成的集合。例如,關(guān)系R和S的差結(jié)果是由屬于R但不屬于S的元組組成的集合。

      (3)交:兩個(gè)相同結(jié)構(gòu)關(guān)系的交是由屬于這兩個(gè)關(guān)系所共有的元組組成的集合。

      2專門的關(guān)系運(yùn)算

      (1)選擇:從關(guān)系中找出滿足給定條件的元組的操作。

      (2)投影:從關(guān)系模式中指定若干個(gè)屬性組成新的關(guān)系:

      (3)連接:關(guān)系的橫向結(jié)合,將兩個(gè)關(guān)系模式拼接成一個(gè)更寬的關(guān)系模式。

      (4)自然連接:在連接運(yùn)算中,按照字段值對應(yīng)相等為條件進(jìn)行的連接操作稱為等值連接。自然連接是去掉重復(fù)屬性的等值連接。小提示:

      選擇和投影運(yùn)算的操作對象只是一個(gè)表,相當(dāng)于對一個(gè)二維表進(jìn)行切割。連接運(yùn)算則需要把兩個(gè)表作為操作對象。如果兩個(gè)表以上進(jìn)行連接,應(yīng)當(dāng)兩兩進(jìn)行連接。1.3 數(shù)據(jù)庫設(shè)計(jì)基礎(chǔ) 考點(diǎn)6 數(shù)據(jù)庫設(shè)計(jì)步驟

      1設(shè)計(jì)原則

      (l)關(guān)系數(shù)據(jù)庫的設(shè)計(jì)應(yīng)遵從概念單一化“一事一地”的原則。

      (2)避免在表之間出現(xiàn)重復(fù)字段。

      (3)表中的字段必須是原始數(shù)據(jù)和基本數(shù)據(jù)元素。

      (4)用外部關(guān)鍵字保證有關(guān)聯(lián)的表之間的聯(lián)系。

      2設(shè)計(jì)步驟

      利用Visual FoxPro來開發(fā)數(shù)據(jù)庫應(yīng)用系統(tǒng),可以按照以下步驟來設(shè)計(jì)。

      (1)需求分析。

      (2)確定需求表C

      (3)確定需求字段。

      (4)確定聯(lián)系。

      (5)設(shè)計(jì)精確

      1.4 Visual FoxPro系統(tǒng)概述 考點(diǎn)7 Visual FoxPro的特點(diǎn)

      (l)增強(qiáng)項(xiàng)目與數(shù)據(jù)庫管理。

      (2)提高應(yīng)用程序開發(fā)的生產(chǎn)率。

      (3)互操作性與支持Internet。

      (4)充分利用已有數(shù)據(jù)。

      第三篇:全國計(jì)算機(jī)等級(jí)考試二級(jí)VF考點(diǎn)分析之查詢與視圖

      全國計(jì)算機(jī)等級(jí)考試二級(jí)VF考點(diǎn)分析之查詢與視圖

      6.1 查詢

      考點(diǎn)1 查詢設(shè)計(jì)器

      1查詢的概念

      查詢是從指定的表或視圖中提取滿足條件的記錄,然后按照想得到的輸出類型定向輸出查詢結(jié)果。查詢以擴(kuò)展名為QPR的文件保存在磁盤上的,這是一個(gè)文本文件,它的主體是SQL SELECT語句。

      2查詢的建立

      建立查詢可以使用“查詢設(shè)計(jì)器”,但它的基礎(chǔ)是SQL SELECT語句。建立查詢的方法有以下幾個(gè)方面。

      (l)可以利用CREATE QUERY命令打開查詢設(shè)計(jì)器建立查詢。

      (2)可以利用“新建”對話框打開查詢設(shè)計(jì)器建立查詢。

      (3)可以在項(xiàng)目管理器的“數(shù)據(jù)”選項(xiàng)卡中打開查詢設(shè)計(jì)器建立查詢。

      (4)可直接編輯QPR文件建立查詢。

      建立查詢時(shí),首先進(jìn)入如圖6-1所示的界面選擇用于建立查詢的表或視圖,選擇表或視圖后,單擊“添加”按鈕。最后單擊“關(guān)閉”按鈕,進(jìn)入如圖6-2所示的查詢設(shè)計(jì)器界面。

      圖6-1 為查詢選擇表或視圖

      查詢設(shè)計(jì)器中的各選項(xiàng)卡和SQL SELECT語句的各短語是相對應(yīng)的,對應(yīng)關(guān)系如下。

      “字段”――SELECT短語,用于指定要查詢的數(shù)據(jù)

      “連接”――JOIN ON短語,用于編輯連接條件。

      “篩選”――WHERE短語,用于指定查詢條件。

      “排序依據(jù)”――ORDER BY短語,用于指定排序字段和排序方式。

      “分組依據(jù)”――GROUP BY短語和HAVING短語,用于分組。

      圖6-2 查詢設(shè)計(jì)器

      3查詢的運(yùn)行

      運(yùn)行查詢有下列兩種方法。

      (1)可以在項(xiàng)口管理器的“數(shù)據(jù)”選項(xiàng)卡中,展開“查詢”選項(xiàng),然后選擇要運(yùn)行的查詢文件,單擊“運(yùn)行”按鈕,可查看查詢結(jié)果。

      (2)在命令窗門執(zhí)行命令DO QueryFile。

      注意:此處的查詢文件名是全名,包括擴(kuò)展名QPR。

      4查詢?nèi)ハ?/p>

      設(shè)計(jì)查詢的目的不只是完成一種查詢功能,在查詢設(shè)計(jì)器中可以根據(jù)需要為查詢輸出定位查詢?nèi)ハ?。通過“查詢”菜單卜的“查詢?nèi)ハ颉?,或在“查詢設(shè)計(jì)器”工具欄中單擊“查詢?nèi)ハ颉卑粹o?!安樵?nèi)ハ颉睂υ捒蛉鐖D6-3所示

      圖6-3 “查詢?nèi)ハ颉睂υ捒?/p>

      各去向的含義如下。

      (1)瀏覽:在“瀏覽"(BROWSE)窗口中顯示查詢結(jié)果,這是默認(rèn)的輸出去向。

      (2)臨時(shí)表:將查詢結(jié)果存儲(chǔ)于一個(gè)命名的臨時(shí)只讀表中。

      (3)表:將結(jié)果保存在一個(gè)命名的數(shù)據(jù)表文件中。

      (4)圖形:查詢結(jié)果可以用于Microsoft Graph。

      (5)屏幕:在Visual FoxPro主窗口或當(dāng)前活動(dòng)輸出窗口中顯示查詢結(jié)果。

      (6)報(bào)表:將結(jié)果輸出到一個(gè)報(bào)表文件。

      (7)標(biāo)簽:將結(jié)果輸出到一個(gè)標(biāo)簽文件。小提示:

      在7種輸出去向中,只有“瀏覽”和“屏幕”兩種輸出去向才能直接看到查詢結(jié)果。6.2 視圖

      考點(diǎn)2 視圖的概念與建立

      1視圖的概念

      視圖是操作表的一種手段,通過視圖可以查詢表,也可以更新表。視圖是根據(jù)表定義的,因此視圖基于表,而視圖可以使應(yīng)用更靈活,因此它又超越表。視圖是數(shù)據(jù)庫中的一個(gè)特有功能,只有在包含視圖的數(shù)據(jù)庫打開時(shí)才能使用。

      視圖兼有“表”和“查詢”的特點(diǎn),與查詢相類似的地方是可以用來從一個(gè)或多個(gè)相關(guān)聯(lián)的表中提取有用信息;與表類似的地方是可以用來更新其中的信息,并將結(jié)果永久性保存在磁盤上。

      2視圖的建立

      (l)用CREATE VIEW命令打開視圖設(shè)計(jì)器建立視圖。

      (2)利用“新建”對話框打開視圖設(shè)計(jì)器建立視圖。

      (3)在項(xiàng)目管理器的“數(shù)據(jù)”選項(xiàng)卡中打開視圖設(shè)計(jì)器建立視圖。

      (4)利用SQL命令CREATE VIEW...AS...建立視圖。

      3視圖設(shè)計(jì)象

      視圖設(shè)計(jì)器(如圖6一所示)與查詢設(shè)計(jì)器基本上一樣,主要有以下幾點(diǎn)不同。

      (1)視圖的結(jié)果保存在數(shù)據(jù)庫中,在磁盤上找不到類似的文件。

      (2)視圖可以用來更新數(shù)據(jù),因此在設(shè)計(jì)器中多了一個(gè)“更新條件”選項(xiàng)卡。

      (3)在視圖中沒有“查詢?nèi)ハ颉钡膯栴}。

      圖6-4 視圖設(shè)計(jì)器 考點(diǎn)3 遠(yuǎn)程視圖與連接

      為了建立遠(yuǎn)程視圖,必須首先建立連接遠(yuǎn)程數(shù)據(jù)庫的“連接”,“連接”是Visual FoxPro數(shù)據(jù)庫中的一種對象。

      1定義數(shù)據(jù)源和連接

      數(shù)據(jù)源一般是ODBC數(shù)據(jù)源,開放數(shù)據(jù)庫互連ODBC是一種連接數(shù)據(jù)庫的通用標(biāo)準(zhǔn)。為了定義ODBC數(shù)據(jù)源,必須首先安裝ODBC驅(qū)動(dòng)程序。

      2建立連接

      建立連接的方法有以下幾種。

      (1)用CREATE CONNECTION命令打開“連接設(shè)計(jì)器”,或完全用命令方式建立連接。

      (2)通過“新建”對話框建立連接。

      (3)在項(xiàng)目管理器的“數(shù)據(jù)”選項(xiàng)卡中建立連接。

      3設(shè)計(jì)遠(yuǎn)程視圖

      利用數(shù)據(jù)源或連接建立的遠(yuǎn)程視圖的SQL語法要符合遠(yuǎn)程數(shù)據(jù)庫的語法,例如,SQL Server的語法和Visual FoxPro的語法就有所區(qū)別??键c(diǎn)4 視圖與數(shù)據(jù)更新

      視圖是根據(jù)基本表派生出來的,所以把它叫做虛擬表為了通過視圖能夠更新基本表中的數(shù)據(jù),需要在視圖設(shè)計(jì)器的“更新條件”選項(xiàng)卡中的左下角選中“發(fā)送SQL更新”復(fù)選框。

      1指定可更新的表

      如果視圖是基于多個(gè)表的,默認(rèn)可以更新“全部表”的相關(guān)字段,如果要指定只能更新某個(gè)表的數(shù)據(jù),則可以通過“表”下拉列表框選擇表 2指定可更新的字段

      在“字段名”列表框中列出了與更新有關(guān)的字段,在字段名左側(cè)有兩列標(biāo)志,“鑰匙”表示關(guān)鍵字,“鉛筆”表示更新通過單擊相應(yīng)列可以改變相關(guān)的狀態(tài),默認(rèn)可以更新所有非關(guān)鍵字字段,并且通過基本表的關(guān)鍵字完成更新,即Visual FoxPro用這些關(guān)鍵字字段來唯一標(biāo)識(shí)那些已在視圖中修改過的基本表中的記錄建議不要改變關(guān)鍵字的狀態(tài),不要試圖通過視圖來更新基本表中的關(guān)鍵字字段值,如有必要,可以指定更新非關(guān)鍵字字段值

      3檢查更新的合法性

      如圖6-1所示,“SQL WHERE子句包括”框中的選項(xiàng)決定哪些字段包含在UPDATE或DELETE語句的WHERE子句中,Visual FoxPro正是利用這些語句將在視圖中修改或刪除的記錄發(fā)送到遠(yuǎn)程數(shù)據(jù)源或基本表中,WHERE子句就是用來檢查自從提取記錄用于視圖中后,服務(wù)器上的數(shù)據(jù)是否已經(jīng)改變。

      “SQL WHERE子句包括”框中各選項(xiàng)的含義如下。

      (l)關(guān)鍵字段:當(dāng)基本表中的關(guān)鍵字字段被改變時(shí),更新失敗。

      (2)關(guān)鍵字和可更新字段:當(dāng)基本表中任何標(biāo)記為可更新的字段被改變時(shí),更新失敗。

      (3)關(guān)鍵字和已修改字段:當(dāng)在視圖中改變的任一字段的值在基本表中已被改變時(shí),更新失敗。

      (4)關(guān)鍵字和時(shí)間戳:當(dāng)遠(yuǎn)程表上記錄的時(shí)間戳在首次檢索之后被改變時(shí),更新失敗。

      4使用更新方式

      “使用更新”框的選項(xiàng)決定當(dāng)向基本表發(fā)送SQL更新時(shí)的更新方式。

      (1)SQL DELETE然后INSERT:先用SQL DELETE命令刪除基本表中被更新的舊記錄,再用SQL INSERT命令向基本表中插入更新后的記錄。

      (2)SQL UPDATE:使用SQL UPDATE命令更新基本表。

      考點(diǎn)5 使用視圖

      視圖建立后,不但可以用它來顯示和更新數(shù)據(jù),而且可以通過調(diào)整它的屬性來提高性能,它的使用類似于表。

      1視圖操作

      (1)在數(shù)據(jù)庫中使用USE命令打開或關(guān)閉視圖。

      (2)在“瀏覽器”窗口中顯示或修改視圖中的記錄。

      (3)使用SQL語句操作視圖。

      (4)在文本框、表格控件、表單或報(bào)表中使用視圖作為數(shù)據(jù)源。

      2使用視圖

      視圖一經(jīng)建立就基本可以像基本表一樣使用,適用于基本表的命令基本都可以用于視圖。比如在視圖上也可以建立索引,此索引當(dāng)然是臨時(shí)的,視圖一關(guān)閉,索引自動(dòng)刪除,多工作區(qū)時(shí)也可以建立聯(lián)系等。但視圖不可以用MODIFY STRUCTURE命令修改結(jié)構(gòu)。因?yàn)橐晥D畢竟不是獨(dú)立存在的基本表,它是由基本表派生出來的,只能修改視圖的定義。

      小提示:

      查詢與視圖的區(qū)別是:查詢可以定義輸出去向,可以將查詢的結(jié)果靈活地應(yīng)用于表單、報(bào)表、圖形等各種場合,但是利用查詢不可以修改數(shù)據(jù);而利用視圖可以修改數(shù)據(jù),可以利用SQL將對視圖的修改發(fā)送到基本表,特別是對于遠(yuǎn)程表的操作,利用視圖是非常有效的。

      第四篇:全國計(jì)算機(jī)等級(jí)考試二級(jí)vfp考點(diǎn)

      010二級(jí)公共基礎(chǔ)知識(shí)復(fù)習(xí)綱要

      第 1 章

      數(shù)據(jù)結(jié)構(gòu)與算法

      考點(diǎn)1:算法具有4個(gè)基本特征:可行性、確定性、有窮性、擁有足夠的情報(bào)。確定性:是指算法中每一個(gè)步驟都必須是有明確定義的,不允許模棱兩可的定義 有窮性:是指算法必須能在有限的時(shí)間內(nèi)做完

      一個(gè)算法由兩種基本要素組成:一是對數(shù)據(jù)對象的運(yùn)算和操作,二是算法的控制結(jié)構(gòu) 考點(diǎn)2:算法復(fù)雜度包括時(shí)間復(fù)雜度和空間復(fù)雜度 時(shí)間復(fù)雜度

      執(zhí)行算法所需要的計(jì)算工作量 空間復(fù)雜度

      執(zhí)行這個(gè)算法所需要的內(nèi)存空間 考點(diǎn)3:數(shù)據(jù)結(jié)構(gòu)

      一:討論的問題:1.數(shù)據(jù)元素之間的邏輯關(guān)系,即數(shù)據(jù)的邏輯結(jié)構(gòu) 2.數(shù)據(jù)元素在計(jì)算機(jī)中的存儲(chǔ)關(guān)系,即數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu) 3.對各種數(shù)據(jù)結(jié)構(gòu)進(jìn)行的運(yùn)算

      考點(diǎn)4:數(shù)據(jù)結(jié)構(gòu)分為兩大類型:線性結(jié)構(gòu)與非線性結(jié)構(gòu)。(1)如果一個(gè)非空的數(shù)據(jù)結(jié)構(gòu)滿足下列兩個(gè)條件: ① 有且只有一個(gè)根結(jié)點(diǎn);

      ② 每一個(gè)結(jié)點(diǎn)最多有一個(gè)前件,也最多有一個(gè)后件。則稱該數(shù)據(jù)結(jié)構(gòu)為線性結(jié)構(gòu)。

      如果一個(gè)數(shù)據(jù)結(jié)構(gòu)不是線性結(jié)構(gòu),則稱之為非線性結(jié)構(gòu)。考點(diǎn)5:線性表

      特點(diǎn):(1)線性表中所有元素所占的存儲(chǔ)空間是連續(xù)的

      (2)線性表中各數(shù)據(jù)元素在存儲(chǔ)空間中是按邏輯順序依次存放的 考點(diǎn)5: 棧的基本概念

      棧(stack)是一種特殊的線性表,是限定只在一端進(jìn)行插入與刪除的線性表。棧是按照“先進(jìn)后出”或“后進(jìn)先出”的原則組織數(shù)據(jù)的??键c(diǎn)6:隊(duì)列的基本概念

      隊(duì)列是只允許在一端進(jìn)行刪除,在另一端進(jìn)行插入的順序表,通常將允許刪除的這一端稱為隊(duì)頭,允許插入的這一端稱為隊(duì)尾。當(dāng)表中沒有元素時(shí)稱為空隊(duì)列。即先進(jìn)先出表。循環(huán)隊(duì)列就是將隊(duì)列存儲(chǔ)空間的最后一個(gè)位置繞到第一個(gè)位置,形成邏輯上的環(huán)狀空間,供隊(duì)列循環(huán)使用

      考點(diǎn)7: 鏈表

      在鏈?zhǔn)酱鎯?chǔ)方式中,要求每個(gè)結(jié)點(diǎn)由兩部分組成:一部分用于存放數(shù)據(jù)元素值,稱為數(shù)據(jù)域;另一部分用于存放指針,稱為指針域。其中指針用于指向該結(jié)點(diǎn)的前一個(gè)或后一個(gè)結(jié)點(diǎn)(即前件或后件)??键c(diǎn)8:二叉樹性質(zhì)

      (1)

      在樹結(jié)構(gòu)中,每一個(gè)結(jié)點(diǎn)只有一個(gè)前件,稱為父結(jié)點(diǎn),沒有父結(jié)點(diǎn)的只有一個(gè),成為根結(jié)點(diǎn)

      (2)

      沒有后件的結(jié)點(diǎn)成為葉子結(jié)點(diǎn)

      (3)

      一個(gè)結(jié)點(diǎn)所擁有的后件個(gè)數(shù)稱為該結(jié)點(diǎn)的度,在樹中,所有結(jié)點(diǎn)中最大的度稱為樹的度

      (4)

      樹的最大層次稱為樹的深度

      (5)

      在二叉樹的第k層上,最多有2^(k-1)個(gè)結(jié)點(diǎn)(6)

      深度為m的二叉樹最多有2^m-1個(gè)結(jié)點(diǎn)(7)

      任意一棵二叉樹,度為0的結(jié)點(diǎn)(即葉子結(jié)點(diǎn))總是比度為2的結(jié)點(diǎn)多一個(gè)(8)

      滿二叉樹:除最后一層外,每一層上的所有結(jié)點(diǎn)都有兩個(gè)子節(jié)點(diǎn)

      (9)

      完全二叉樹:除最后一層外,每一層上的結(jié)點(diǎn)數(shù)都達(dá)到最大值,在最后一層上只缺少右邊的若干結(jié)點(diǎn)

      考點(diǎn)9: 二叉樹的遍歷

      根據(jù)訪問根結(jié)點(diǎn)的次序,二叉樹的遍歷分為三類:前序遍歷、中序遍歷和后序遍歷。(1)前序遍歷

      先訪問根結(jié)點(diǎn),然后遍歷左子樹,最后遍歷右子樹;并且在遍歷左、右子樹 時(shí),仍需先訪問根結(jié)點(diǎn),然后遍歷左子樹,最后遍歷右子樹。(2)中序遍歷

      先遍歷左子樹、然后訪問根結(jié)點(diǎn),最后遍歷右子樹;并且,在遍歷左、右子 樹時(shí),仍然先遍歷左子樹,然后訪問根結(jié)點(diǎn),最后遍歷右子樹。例如,對圖 1-1 中的二叉樹進(jìn)行中序遍歷的結(jié)果(或稱為該二叉樹的中序序列)(3)后序遍歷

      先遍歷左子樹、然后遍歷右子樹,最后訪問根結(jié)點(diǎn);并且,在遍歷左、右子 樹時(shí),仍然先遍歷左子樹,然后遍歷右子樹,最后訪問根結(jié)點(diǎn)??键c(diǎn)10:各種排序的復(fù)雜度(1)順序查找需要比較n 次

      (2)冒泡排序在最壞的情況下需要比較次數(shù)為n(n-1)/2。(3)簡單插入排序法,最壞情況需要n(n-1)/2 次比較;(4)希爾排序法,最壞情況需要O(n1.5)次比較。

      (5)簡單選擇排序法,最壞情況需要n(n-1)/2 次比較;(6)堆排序法,最壞情況需要O(nlog2n)次比較。

      第二章:程序設(shè)計(jì)基礎(chǔ)

      考點(diǎn)1:結(jié)構(gòu)化程序設(shè)計(jì)的原則

      (1)自頂向上:先考慮整體,再考慮細(xì)節(jié);先考慮全局目標(biāo),再考慮局部目標(biāo);(2)逐步求精:對復(fù)雜問題應(yīng)設(shè)計(jì)一些子目標(biāo)作為過渡,逐步細(xì)化;

      (3)模塊化:把程序要解決的總目標(biāo)分解為分目標(biāo),再進(jìn)一步分解為具體的小目標(biāo),把每個(gè)小目標(biāo)稱為一個(gè)模塊。

      (4)限制使用goto 語句:在程序開發(fā)過程中要限制使用goto 語句??键c(diǎn)2:結(jié)構(gòu)化程序的基本結(jié)構(gòu)

      結(jié)構(gòu)化程序的基本結(jié)構(gòu)有三種類型:順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。

      考點(diǎn)3: 面向?qū)ο蠓椒êw對象及對象屬性與方法、類、繼承、多態(tài)性幾個(gè)基本要素。對象是面向?qū)ο蠓椒ㄖ凶罨镜母拍?主要特點(diǎn):(1)標(biāo)識(shí)惟一型

      (2)分類性(3)多態(tài)性

      (4)封裝性

      (5)模塊獨(dú)立性好 考點(diǎn)4:消息:對象間的相互合作需要一個(gè)機(jī)制來協(xié)助進(jìn)行,這個(gè)機(jī)制就是消息 考點(diǎn)5:繼承是面向?qū)ο蟮姆椒ǖ囊粋€(gè)主要特征,分為單繼承和多重繼承

      第三章:軟件工程基礎(chǔ)

      考點(diǎn)1: 計(jì)算機(jī)軟件是包括程序、數(shù)據(jù)以及相關(guān)文檔的完整集合,軟件工程包括3 個(gè)要素:方法、工具和過程

      考點(diǎn)2: 軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過程稱為軟件生命周期。軟件生命周期還可以分為軟件定義、軟件開發(fā)、軟件運(yùn)行維護(hù)階段 軟件定義階段包括:可行性研究、需求分析

      軟件開發(fā)階段包括:概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、實(shí)現(xiàn)、測試 軟件維護(hù)階段包括:使用、維護(hù)、退役

      考點(diǎn)3:軟件工程的理論和技術(shù)性研究主要包括:軟件開發(fā)技術(shù)和軟件工程管理 考點(diǎn)4:數(shù)據(jù)流圖圖符的含義

      圓形表示加工,箭頭表示數(shù)據(jù)流,等于號(hào)表示存儲(chǔ)文件,矩形表示源、潭

      考點(diǎn)5:數(shù)據(jù)字典:是結(jié)構(gòu)化分析方法的核心,數(shù)據(jù)字典是對所有與系統(tǒng)相關(guān)的數(shù)據(jù)元素的一個(gè)有組織的列表

      考點(diǎn)6:軟件需求規(guī)格說明書是需求分析階段的最后成果 考點(diǎn)7:模塊獨(dú)立性

      衡量模塊獨(dú)立性的定性標(biāo)準(zhǔn):內(nèi)聚性與耦合性

      內(nèi)聚性:是一個(gè)模塊內(nèi)部各個(gè)元素間彼此結(jié)合的緊密程度的度量 耦合性:模塊間互相連接的緊密程度的度量 一個(gè)優(yōu)秀的設(shè)計(jì)應(yīng)盡量做到高內(nèi)聚、低耦合

      考點(diǎn)8:典型的數(shù)據(jù)流類型有兩種:變換型和事務(wù)型 考點(diǎn)9:程序流程圖圖符的含義

      考點(diǎn)10:軟件測試是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過程 靜態(tài)測試是由人工進(jìn)行的測試 動(dòng)態(tài)測試是基于計(jì)算機(jī)的測試

      考點(diǎn)11:白盒測試主要方法:邏輯覆蓋、基本路徑測試

      黑盒測試主要方法:等價(jià)類劃分法、邊界值分析法、錯(cuò)誤推測法、因果圖等

      軟件測試過程一般按4個(gè)步驟來進(jìn)行:單元測試、集成測試、驗(yàn)收測試、系統(tǒng)測試

      考點(diǎn)12:程序調(diào)試的任務(wù)是診斷和改正程序中的錯(cuò)誤,與測試不同,軟件測試是盡可能多的發(fā)現(xiàn)錯(cuò)誤

      第四章:數(shù)據(jù)庫設(shè)計(jì)基礎(chǔ)

      考點(diǎn)1:數(shù)據(jù)庫管理系統(tǒng)是數(shù)據(jù)庫的機(jī)構(gòu),它是一種系統(tǒng)軟件,負(fù)責(zé)數(shù)據(jù)庫中的數(shù)據(jù)組織,數(shù)據(jù)操縱,數(shù)據(jù)維護(hù),控制及保護(hù)和數(shù)據(jù)服務(wù)等 考點(diǎn)2:數(shù)據(jù)庫系統(tǒng)提供的數(shù)據(jù)語言:(1)

      數(shù)據(jù)定義語言:該語言負(fù)責(zé)數(shù)據(jù)的模式定義與數(shù)據(jù)的物理存取構(gòu)建(2)

      數(shù)據(jù)操縱語言負(fù)責(zé)數(shù)據(jù)的操縱,包括查詢及增、刪、改等

      (3)

      數(shù)據(jù)控制語言負(fù)責(zé)數(shù)據(jù)完整性、安全性的定義與檢查以及并發(fā)控制、故障恢復(fù)等 考點(diǎn)3:數(shù)據(jù)庫系統(tǒng)由如下幾部分組成:數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫管理員、硬件平臺(tái)與軟件平臺(tái)

      考點(diǎn)4:數(shù)據(jù)獨(dú)立性是數(shù)據(jù)與程序間的互不依賴性,即數(shù)據(jù)庫中數(shù)據(jù)獨(dú)立于應(yīng)用程序而不依賴于應(yīng)用程序,數(shù)據(jù)獨(dú)立性分為物理獨(dú)立性和邏輯獨(dú)立性 考點(diǎn)5:數(shù)據(jù)庫的三級(jí)模式

      (1)

      概念模式:是數(shù)據(jù)庫系統(tǒng)中全局?jǐn)?shù)據(jù)邏輯結(jié)構(gòu)的描述,是全體用戶公共數(shù)據(jù)視圖(2)

      外模式:是用戶的數(shù)據(jù)視圖,也就是用戶所見到的數(shù)據(jù)模式(3)

      內(nèi)模式:它給出了數(shù)據(jù)庫物理存儲(chǔ)結(jié)構(gòu)與物理存取方法 考點(diǎn)6:數(shù)據(jù)模型所描述的內(nèi)容有三個(gè)方面:(1)

      數(shù)據(jù)結(jié)構(gòu):主要描述數(shù)據(jù)的類型、內(nèi)容、性質(zhì)以及數(shù)據(jù)間的聯(lián)系(2)

      數(shù)據(jù)操作:主要描述在相應(yīng)數(shù)據(jù)結(jié)構(gòu)上的操作類型與操作方式(3)

      數(shù)據(jù)約束:主要描述數(shù)據(jù)結(jié)構(gòu)內(nèi)數(shù)據(jù)間的語法、語義聯(lián)系 考點(diǎn)7:E-R模型

      (1)E-R模型由三個(gè)基本概念組成:實(shí)體、聯(lián)系和屬性

      (2)在E-R圖示法中:矩形表示實(shí)體集,橢圓形表示屬性,菱形表示聯(lián)系

      考點(diǎn)8:關(guān)系模型的約束包括實(shí)體完整性約束、參照完整性約束、用戶自定義完整性約束 考點(diǎn)9:關(guān)系代數(shù)

      并運(yùn)算:關(guān)系R與S經(jīng)并運(yùn)算后所得到的關(guān)系是由那些在R內(nèi)或在S內(nèi)的有序組 交運(yùn)算:關(guān)系R與S經(jīng)交運(yùn)算后所得到的關(guān)系是由那些即在R內(nèi)又在S內(nèi)的有序組 差運(yùn)算:關(guān)系R與S經(jīng)差運(yùn)算后所得到的關(guān)系是由那些在R內(nèi)但不在S內(nèi)的有序組 自然連接: 考點(diǎn)10:E-R圖與關(guān)系的轉(zhuǎn)換

      E-R圖中實(shí)體與聯(lián)系都可以轉(zhuǎn)換成關(guān)系,屬性也可以轉(zhuǎn)換成關(guān)系的屬性 1.1 數(shù)據(jù)庫基礎(chǔ)知識(shí)

      考點(diǎn)1 計(jì)算機(jī)數(shù)據(jù)管理的發(fā)展 1數(shù)據(jù)與數(shù)據(jù)處理

      數(shù)據(jù)是指存儲(chǔ)在某一種媒體上能夠識(shí)別的物理符號(hào)。數(shù)據(jù)處理的中心問題是數(shù)據(jù)管理。2計(jì)算機(jī)數(shù)據(jù)管理(l)人工管理。(2)文件系統(tǒng)。(3)數(shù)據(jù)庫系統(tǒng)。

      (4)分布式數(shù)據(jù)庫系統(tǒng)。(5)面向?qū)ο髷?shù)據(jù)庫系統(tǒng)。3數(shù)據(jù)庫管理系統(tǒng)

      為數(shù)據(jù)庫的建立、使用和維護(hù)而配置的軟件稱為數(shù)據(jù)庫管理系統(tǒng)DBMS(DataBase Management System)。

      圖1-1 數(shù)據(jù)庫系統(tǒng)中數(shù)據(jù)與程序的關(guān)系 考點(diǎn)2 數(shù)據(jù)庫系統(tǒng) 1有關(guān)數(shù)據(jù)庫的概念

      (1)數(shù)據(jù)庫(DataBase):存儲(chǔ)在計(jì)算機(jī)存儲(chǔ)設(shè)備上、結(jié)構(gòu)化的相關(guān)數(shù)據(jù)的集合。

      (2)數(shù)據(jù)庫應(yīng)用系統(tǒng)(DBAS):是由系統(tǒng)開發(fā)人員利用數(shù)據(jù)庫系統(tǒng)資源開發(fā)出來的,面向某一類實(shí)際應(yīng)用的應(yīng)用軟件系統(tǒng)。

      (3)數(shù)據(jù)庫管理系統(tǒng)(DBMS):對數(shù)據(jù)實(shí)行專門管理,提供安全性和完整性等統(tǒng)一機(jī)制,可以對數(shù)據(jù)庫的建立、使用和維護(hù)進(jìn)行管理。

      (4)數(shù)據(jù)庫系統(tǒng)(DBS):是指引進(jìn)數(shù)據(jù)庫技術(shù)后的計(jì)算機(jī)系統(tǒng),實(shí)現(xiàn)有組織地、動(dòng)態(tài)地存儲(chǔ)大量相關(guān)數(shù)據(jù),提供數(shù)據(jù)處理和信息資源共享的便利手段。數(shù)據(jù)庫系統(tǒng)由硬件系統(tǒng)、數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)及相關(guān)軟件、數(shù)據(jù)庫管理員和用戶等部分組成。2數(shù)據(jù)庫系統(tǒng)的特點(diǎn)

      (l)實(shí)現(xiàn)數(shù)據(jù)共享,減少數(shù)據(jù)冗余。(2)采用特定的數(shù)據(jù)模型。(3)具有較高的數(shù)據(jù)獨(dú)立性。(4)具有統(tǒng)一的數(shù)據(jù)控制功能??键c(diǎn)3 數(shù)據(jù)模型 1實(shí)體的描述(1)實(shí)體。

      (2)實(shí)體的屬性。(3)實(shí)體集和實(shí)體型。

      2實(shí)體間聯(lián)系及聯(lián)系的種類(1)一對一聯(lián)系。(2)一對多聯(lián)系。(3)多對多聯(lián)系。3數(shù)據(jù)模型簡介

      為了反映事物本身及事物之間的各種聯(lián)系,數(shù)據(jù)庫中的數(shù)據(jù)必須有一定的結(jié)構(gòu),這種結(jié)構(gòu)用數(shù)據(jù)模型來表示,通常有以下3種。(1)層次數(shù)據(jù)模型。(2)網(wǎng)狀數(shù)據(jù)模型。(3)關(guān)系數(shù)據(jù)模型。小提示:

      數(shù)據(jù)庫DB、數(shù)據(jù)庫系統(tǒng)DBS和數(shù)據(jù)庫管理系統(tǒng)DBMS之間的關(guān)系是DBS包括DB和DBMS。1.2 關(guān)系模型

      關(guān)系模型的用戶界面非常簡單,一個(gè)關(guān)系的邏輯結(jié)構(gòu)就是一張二維表。這種用二維表的形式表示實(shí)體和實(shí)體間聯(lián)系的數(shù)據(jù)模型稱為關(guān)系數(shù)據(jù)模型。1關(guān)系術(shù)語

      (l)關(guān)系:一個(gè)關(guān)系就是一張二維表,每個(gè)關(guān)系有一個(gè)關(guān)系名。在Visual FoxPro中一個(gè)關(guān)系存儲(chǔ)為一個(gè)文件,擴(kuò)展名為DBF,稱為“表”。

      對關(guān)系的描述稱為關(guān)系模式,一個(gè)關(guān)系模式對應(yīng)一個(gè)關(guān)系的結(jié)構(gòu),格式為: 關(guān)系名(屬性名1,屬性名2,?,屬性名n)(2)元組:在一個(gè)二維表中,水平方向的行稱為元組,每一行為一個(gè)元組。(3)屬性:將二維表中垂直方向的列稱為屬性,每一列都有一個(gè)屬性名。(4)域:屬性的取值范圍,即不同元組對同一個(gè)屬性的取值所限定的范圍。

      (5)關(guān)鍵字:屬性或?qū)傩缘慕M合,其值能夠唯一地標(biāo)識(shí)一個(gè)元組。在Visual FoxPro中,主關(guān)鍵字和候選關(guān)鍵字就起唯一標(biāo)志一個(gè)元組的作用。

      (6)外部關(guān)鍵字:如果表中一個(gè)字段不是本表的主關(guān)鍵字或候選關(guān)鍵字,而是另一個(gè)表的主關(guān)鍵字或候選關(guān)鍵字,那么這個(gè)字段(屬性)就稱為外部關(guān)鍵字。2關(guān)系的特點(diǎn)

      (1)關(guān)系必須規(guī)范化。

      (2)在同一個(gè)關(guān)系中不能出現(xiàn)同名屬性,Visual FoxPro中表示為字段名的不同。(3)關(guān)系中不允許有完全相同的元組,即冗余。(4)在一個(gè)關(guān)系中元組的次序無關(guān)緊要。(5)在一個(gè)關(guān)系中列的次序無關(guān)緊要??键c(diǎn)5 關(guān)系運(yùn)算

      對關(guān)系數(shù)據(jù)庫進(jìn)行查詢時(shí),需要找到用戶感興趣的數(shù)據(jù),這就需要對關(guān)系進(jìn)行一定的關(guān)系運(yùn)算,關(guān)系的基本運(yùn)算有兩類:傳統(tǒng)的集合運(yùn)算和專門的關(guān)系運(yùn)算。1傳統(tǒng)的集合運(yùn)算

      (1)并:兩個(gè)相同結(jié)構(gòu)關(guān)系的并是由屬于這兩個(gè)關(guān)系的全部元組組成的集合。

      (2)差:兩個(gè)相同結(jié)構(gòu)關(guān)系的差是由屬于前一個(gè)關(guān)系的元組而不屬于后一個(gè)關(guān)系的元組組成的集合。例如,關(guān)系R和S的差結(jié)果是由屬于R但不屬于S的元組組成的集合。(3)交:兩個(gè)相同結(jié)構(gòu)關(guān)系的交是由屬于這兩個(gè)關(guān)系所共有的元組組成的集合。2專門的關(guān)系運(yùn)算

      (1)選擇:從關(guān)系中找出滿足給定條件的元組的操作。(2)投影:從關(guān)系模式中指定若干個(gè)屬性組成新的關(guān)系:

      (3)連接:關(guān)系的橫向結(jié)合,將兩個(gè)關(guān)系模式拼接成一個(gè)更寬的關(guān)系模式。

      (4)自然連接:在連接運(yùn)算中,按照字段值對應(yīng)相等為條件進(jìn)行的連接操作稱為等值連接。自然連接是去掉重復(fù)屬性的等值連接。小提示:

      選擇和投影運(yùn)算的操作對象只是一個(gè)表,相當(dāng)于對一個(gè)二維表進(jìn)行切割。連接運(yùn)算則需要把兩個(gè)表作為操作對象。如果兩個(gè)表以上進(jìn)行連接,應(yīng)當(dāng)兩兩進(jìn)行連接。1.3 數(shù)據(jù)庫設(shè)計(jì)基礎(chǔ) 考點(diǎn)6 數(shù)據(jù)庫設(shè)計(jì)步驟 1設(shè)計(jì)原則

      (l)關(guān)系數(shù)據(jù)庫的設(shè)計(jì)應(yīng)遵從概念單一化“一事一地”的原則。(2)避免在表之間出現(xiàn)重復(fù)字段。

      (3)表中的字段必須是原始數(shù)據(jù)和基本數(shù)據(jù)元素。(4)用外部關(guān)鍵字保證有關(guān)聯(lián)的表之間的聯(lián)系。2設(shè)計(jì)步驟

      利用Visual FoxPro來開發(fā)數(shù)據(jù)庫應(yīng)用系統(tǒng),可以按照以下步驟來設(shè)計(jì)。(1)需求分析。(2)確定需求表C(3)確定需求字段。(4)確定聯(lián)系。(5)設(shè)計(jì)精確

      1.4 Visual FoxPro系統(tǒng)概述 考點(diǎn)7 Visual FoxPro的特點(diǎn)(l)增強(qiáng)項(xiàng)目與數(shù)據(jù)庫管理。

      (2)提高應(yīng)用程序開發(fā)的生產(chǎn)率。(3)互操作性與支持Internet。(4)充分利用已有數(shù)據(jù)。2.1程序與程序文件 程序與程序文件

      考點(diǎn)1 程序的概念、建立與執(zhí)行 1程序的概念

      程序是能夠完成一定任務(wù)的命令集合。這組命令被存放在稱為程序文件或命令文件的文本文件中。當(dāng)運(yùn)行程序時(shí),系統(tǒng)會(huì)按照一定的次序自動(dòng)執(zhí)行包含在程序文件中的命令。2程序文件的建立與修改

      程序文件的建立與修改一般是通過調(diào)用系統(tǒng)內(nèi)置的文本編輯器來進(jìn)行的。其建立步驟如下。(l)打開文本編輯窗口。

      (2)在文本編輯窗口中輸入程序內(nèi)容,此處所輸入的程序命令不會(huì)馬上被執(zhí)行。

      (3)編輯完成后,從“文件”菜單中選擇“保存”命令或按快捷鍵Ctrl+W保存程序文件。3打開或修改程序文件的方法

      (1)從“文件”菜單中選擇“打開”命令,彈出“打開”對話框。(2)在“文件類型”列表框中選擇“程序”。(3)在文件列表框中選定要修改的文件,并單擊“確定”按鈕。

      (4)編輯修改后,從“文件”菜單中選擇“保存”命令或按快捷鍵Ctrl+W保存程序文件,若要放棄修改,可直接按Esc鍵,或從“文件”菜單中選擇“還原”命令。4程序文件的執(zhí)行

      程序文件建立后,可使用多種方式、多次執(zhí)行它,常用的以下有兩種方式。(l)菜單方式。(2)命令方式。

      考點(diǎn)2 簡單的輸入輸出命令

      程序一般都包含數(shù)據(jù)輸入、數(shù)據(jù)處理和數(shù)據(jù)輸出3個(gè)部分。1 INPUT命令

      格式:INPUT[<字符表達(dá)式>]TO<內(nèi)存變量> 功能:該命令等待用戶從鍵盤輸入數(shù)據(jù),當(dāng)用戶回車后,系統(tǒng)將表達(dá)式的值存入指定的內(nèi)存變量。

      注釋:輸入的數(shù)據(jù)可以是常量、變量,也可以是更為一般的表達(dá)式。但不能不輸入任何內(nèi)容直接按回車鍵輸入字符串時(shí)必須加定界符,輸入邏輯型常量時(shí)要用圓點(diǎn)定界(如.T.,.F.),則輸入日期時(shí)間型常量時(shí)要用大括號(hào)(如{^2001-03-01})。2 ACCEPT命令

      格式:ACCEPT[<字符表達(dá)式>]TO<內(nèi)存變量> 功能:該命令等待用戶從鍵盤輸入字符串,當(dāng)用戶回車后,系統(tǒng)將表達(dá)式的值存入指定的內(nèi)存變量。

      注釋:該命令只能接收字符串。用戶在輸入字符串時(shí)不需要加定界符;否則,系統(tǒng)會(huì)把定界符作為字符串本身的一部分。如果不輸入任何內(nèi)容而直接按回車鍵,系統(tǒng)會(huì)把空串賦給指定的內(nèi)存變量。3 WAIT命令

      格式:WAIT[<字符表達(dá)式>][TO<內(nèi)存變量>][WINDOW[AT<行>,<列>]] [NOWAIT][CLEARINOCLEAR][TIMEOUT<數(shù)值表達(dá)式>] 功能:該命令顯示字符表達(dá)式的值作為提示信息,暫停程序的執(zhí)行,直到用戶按任意鍵或單擊鼠標(biāo)時(shí)繼續(xù)程序運(yùn)行。

      注釋:<內(nèi)存變量>用來保存用戶輸入的字符,其類型為字符型。若用戶按的是Enter鍵或單擊了鼠標(biāo),那么<內(nèi)存變量>中保存的將是空串若不選TO <內(nèi)存變量>短語,則輸入的單字符不保留。小提示:

      如果用DO命令執(zhí)行查詢文件、菜單文件,在文件名中必須要包括擴(kuò)展名(QPR、MPR)。7.2 程序的基本結(jié)構(gòu)

      程序結(jié)構(gòu)是指程序中命令或語句執(zhí)行的流程結(jié)構(gòu),包括3種基本結(jié)構(gòu):順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)??键c(diǎn)3 順序結(jié)構(gòu)

      順序結(jié)構(gòu)是最簡單的程序結(jié)構(gòu),它是按命令在程序中出現(xiàn)的先后次序依次執(zhí)行。考點(diǎn)4 選擇結(jié)構(gòu)

      支持選擇結(jié)構(gòu)的語句包括條件語句和分支語句。1條件語句 格式: IF<條件> <語句序列1> [ELSE> <語句序列2>] ENDIF 功能:該語句根據(jù)<條件>是否成立從兩組代碼中選擇一組執(zhí)行。語句的執(zhí)行流程圖如圖7-1和圖7-2所示。

      圖7-1有ELSE的選擇語句

      圖7-2無ELSE的選擇語句 2分支語句

      格式:DO CASE CASE<條件1> <語句序列1> CASE<條件2> <語句序列2> ……

      CASE<條件n> <語句序列n> [OTHERWISE <語句序列>] ENDCASE

      功能:語句執(zhí)行時(shí),依次判斷CASE后面的條件是否成立。分支語句實(shí)現(xiàn)的是一種擴(kuò)展的選擇結(jié)構(gòu),可以根據(jù)條件從多組代碼中選擇一組執(zhí)行。分支語句的流程如圖7-3所示。

      圖7-3 多分支語句 考點(diǎn)5 循環(huán)結(jié)構(gòu)

      循環(huán)結(jié)構(gòu)也稱為重復(fù)結(jié)構(gòu),是指程序在執(zhí)行的過程中,其中的某段代碼被重復(fù)執(zhí)行若一干珠。被重復(fù)執(zhí)行的代碼段,通常稱為循環(huán)體。Visual FoxPro支持循環(huán)結(jié)構(gòu)的語句包括:DO WHILE-ENDDO、FOR-ENDFOR和SCAN-ENDSCAN。1 DO WHILEENDFOR語句 格式:

      FOR<循環(huán)變量>=<初值>TO<終值>[STEP<步長>] <循環(huán)體> ENDFOR 功能:首先將初值賦給循環(huán)變量,然后判斷循環(huán)條件是否成立(若步長為正值,則循環(huán)條件為<循環(huán)變量><=<終值>;若步長為負(fù)值,則循環(huán)條件為<循環(huán)變量>>=<終值>)。如果成立,則執(zhí)行循環(huán)體,然后循環(huán)變量增加一個(gè)步長值,并再次判斷循環(huán)條件,一直到條件為假時(shí),退出循環(huán)體。該語句通常用于實(shí)現(xiàn)循環(huán)次數(shù)已知情況下的循環(huán)結(jié)構(gòu)〕 3 SCAN-ENDSCAN語句 格式:

      SCAN[<范圍>][FOR<條件1>][WHERE<條件2>] <循環(huán)體> ENDSCAN

      功能:該循環(huán)語句一般用于處理表中記錄,語句可指明需要處理的記錄范圍及應(yīng)滿足的條件。執(zhí)行該語句時(shí),記錄指針自動(dòng)、依次地在當(dāng)前表的指定范圍內(nèi)滿足條件的記錄上移動(dòng),對每一條記錄執(zhí)行循環(huán)體內(nèi)的命令。7.3 多模塊程序

      模塊是一個(gè)相對獨(dú)立的程序段,它可以被其他模塊調(diào)用,也可以調(diào)用其他模塊。通常,把被其他模塊調(diào)用的模塊稱為子程序,把調(diào)用其他模塊而沒有被其他模塊調(diào)用的模塊稱為主程序。應(yīng)用程序一般都是多模塊程序,包含多個(gè)程序模塊??键c(diǎn)6 模塊的定義和調(diào)用 1模塊的定義

      在Visual FoxPro中,模塊可以是命令文件,也可以是過程。過程定義的語句格式為: PROCEDURE|FUNCTION<過程名> <命令序列> [RETURN[<表達(dá)式>]] [ENDPROCIENDFUNC] 功能說明如下。

      (1)PROCEDURE|FUNCTION命令表示一個(gè)過程的開始,并命名過程。過程名必須以字母或下劃線開頭,可以包含數(shù)字、字母和下劃線。

      (2)當(dāng)程序執(zhí)行到RETURN命令時(shí),控制將轉(zhuǎn)回到調(diào)用處(或命令窗口),并返回表達(dá)式的值。若默認(rèn)RETURN命令,系統(tǒng)將在過程結(jié)束處自動(dòng)調(diào)用一條隱含的RETURN命令。(3)ENDPROC|ENDFUNC命令表示一個(gè)過程的結(jié)束。如果默認(rèn)此語句,那么過程結(jié)束于下一條PROCEDURE|FUNCTION命令或文件尾。2模塊的調(diào)用

      模塊調(diào)用的格式有兩種。

      (1)使用DO命令,格式如下。DO<文件名>|<過程名>(2)在名字后加一對小括號(hào),格式如下。<文件名>|<過程名>()3打開過程文件 命令格式如下。

      SET PROCEDURE TO[<過程文件1>[,<過程文件2>,?][ADDITIVE] 4關(guān)閉過程文件 命令格式如下。

      RELEASE PROCEDURE<過程文件1>[,<過程文件2>,?] 考點(diǎn)7 參數(shù)傳遞

      模塊程序可以接收調(diào)用程序傳遞過來的參數(shù)。

      (1)PARAMETERS<形參變量1>[,<形參變量2>,?]。(2)LPARAMETERS<形參變量1>[,<形參變量2>,?]。

      說明PARAMETERS聲明的形參被看做是模塊程序中建立的私有變量,LPARAMETERS聲明的形參被看做是模塊程序中建立的局部變量。除此之外,兩條命令無其他區(qū)別。不管是PARAMETERS或LPARAMETERS,都應(yīng)該是模塊程序的第一條可執(zhí)行命令。(1)調(diào)用參數(shù)調(diào)用模塊程序參數(shù)的格式如下。

      DO<文件名>|<過程名>WITH<實(shí)參1>[,<實(shí)參2>,?] <文件名>|<過程名>(<實(shí)參1>[,<實(shí)參2>,?])說明:實(shí)參可以是常量、變量或一般表達(dá)式,調(diào)用模塊程序時(shí),形參的數(shù)目不能少于實(shí)參的數(shù)目,當(dāng)形參數(shù)目多于實(shí)參數(shù)目時(shí),多余的形參取初值邏輯假.F.。

      (2)參數(shù)的傳遞。模塊中參數(shù)的傳遞分為兩種:按值傳遞(實(shí)參一般為常量和表達(dá)式)和引用傳遞(實(shí)參一般為變量)。參數(shù)的傳遞方式可以重新設(shè)置,格式如下。SET UDFPARMS TO VALUE|REFERENCE 考點(diǎn)8 變量的作用域

      變量的一個(gè)重要屬性是作用域。變量的作用域指的是變量在什么范圍內(nèi)是有效或能夠被訪問的。在Visual FoxPro中,可分為公共變量、私有變量和局部變量3類。1.公共變量

      在任何模塊中都可使用的變量稱為公共變量,公共變量必須先定義后使用,格式如下。PUBLIC<內(nèi)存變量表> 說明:該命令是建立公共的內(nèi)存變量,并賦以初值邏輯假.F.。建立好的公共變量一直有效,即使程序結(jié)束返回命令窗口也不會(huì)消失,只有執(zhí)行CLEAR MEMORY,RELEASE或QUIT等命令后,才能被釋放。2私有變量

      在程序中直接使用(沒有預(yù)先聲明),而由系統(tǒng)自動(dòng)隱含建立的變量都是私有變量。私有變量的作用域是建立它的模塊及其下屬的各層模塊。3局部變量

      局部變量只能在建立它的模塊中使用,不能在上層或下層模塊中使用。程序結(jié)束時(shí),自動(dòng)釋放局部變量。格式如下 LOCAL<內(nèi)存變量表> 說明:該變量同樣給建立的內(nèi)存變量賦以初值邏輯假.F.,也必須先定義后使用。當(dāng)子程序中定義的變量名與主程序中同名時(shí),為避免子程序中的變量值改變主程序中的變量值,可在子程序中使用PRIVATE命令隱藏主程序中可能存在的變量,使這些變量在子程序中暫時(shí)無效。格式如下。

      (1)PRIVATE<內(nèi)存變量表>。

      (2)PRIVATE ALL[LIKE<通配符>|EXCEPT<通配符>]。說明:該命令并不建立內(nèi)存變量,它只是隱藏指定的在上層模塊中可能已經(jīng)存在的內(nèi)存變量,但是當(dāng)模塊程序返回到上層模塊時(shí),被隱藏的變量就自動(dòng)恢復(fù)有效性,保持原值。7.4 程序調(diào)試

      考點(diǎn)9 調(diào)試器環(huán)境

      程序調(diào)試是指在發(fā)現(xiàn)程序有錯(cuò)誤的情況下,確定出錯(cuò)位置并糾正錯(cuò)誤。計(jì)算機(jī)一般能夠發(fā)現(xiàn)程序的出錯(cuò)位置,但對于計(jì)算機(jī)不能發(fā)現(xiàn)的錯(cuò)誤,只能由用戶自己來查錯(cuò)。Visual FoxPro提供的功能強(qiáng)大的調(diào)試工具—調(diào)試器,可幫助我們進(jìn)行這項(xiàng)工作。調(diào)用調(diào)試器的方法一般有兩種。

      (l)選擇“工具”菜單中的“調(diào)試器”命令。(2)在命令窗口中輸入DEBUG命令。考點(diǎn)10 設(shè)置斷點(diǎn)

      可以設(shè)置以下4種類型的斷點(diǎn)。

      (1)在定位處中斷:可指定一行代碼,當(dāng)程序調(diào)試執(zhí)行到該行時(shí),中斷程序運(yùn)行。

      (2)如果表達(dá)式值為真,則在定位處中斷:指定一行代碼及一個(gè)表達(dá)式,當(dāng)程序調(diào)試執(zhí)行到該行代碼時(shí),如果表達(dá)式值為真,就中斷程序運(yùn)行。

      (3)當(dāng)表達(dá)式值為真時(shí)中斷:可以指定一個(gè)表達(dá)式,在程序調(diào)試執(zhí)行過程中,當(dāng)該表達(dá)式值為邏輯真.T.時(shí),中斷程序運(yùn)行。

      (4)當(dāng)表達(dá)式值改變時(shí)中斷:可以指定一個(gè)表達(dá)式,在程序調(diào)試執(zhí)行過程中,當(dāng)該表達(dá)式值改變時(shí),中斷程序運(yùn)行??键c(diǎn)11 “調(diào)試”菜單

      “調(diào)試”菜單包含執(zhí)行程序、選擇執(zhí)行方式、終止程序執(zhí)行、修改程序,以及調(diào)整程序執(zhí)行速度等命令。各命令具體功能如下。

      (1)運(yùn)行:執(zhí)行在跟蹤窗口中打開的程序:

      (2)繼續(xù)執(zhí)行:當(dāng)程序被中斷時(shí),該命令可使程序在中斷處繼續(xù)往下執(zhí)行。(3)取消:終止程序的調(diào)試執(zhí)行,并關(guān)閉程序。

      (4)定位修改:終止程序的調(diào)試執(zhí)行,然后在文本編輯窗口中打開調(diào)試程序。

      (5)跳出:以連續(xù)方式而非單步方式繼續(xù)執(zhí)行被調(diào)用模塊程序中的代碼,然后在調(diào)用程序的調(diào)用語句的下一行處中斷。

      (6)單步:單步執(zhí)行下一行代碼。如果下一行代碼調(diào)用了過程或者方法程序,那么該過程或者方法程序在后臺(tái)執(zhí)行。

      (7)單步跟蹤:單步執(zhí)行下一行代碼。

      (8)運(yùn)行到光標(biāo)處:從當(dāng)前位置執(zhí)行代碼直至光標(biāo)處中斷。

      (9)調(diào)速:打開“調(diào)整運(yùn)行速度”對話框,設(shè)置兩代碼行執(zhí)行之間的延遲秒數(shù)。

      (10)設(shè)置下一條語句:程序中斷時(shí)選擇該命令,可使光標(biāo)所在行成為恢復(fù)執(zhí)行后要執(zhí)行的語句。

      3.1 Visual FoxPro數(shù)據(jù)庫及其建立 考點(diǎn)1 建立和使用數(shù)據(jù)庫 1數(shù)據(jù)庫的建立

      (1)在項(xiàng)目管理器中建立數(shù)據(jù)庫。(2)通過“新建”對話框建立數(shù)據(jù)庫。(3)使用命令建立數(shù)據(jù)庫,格式為:

      CREATE DATABASE[DatabaseName |?] 2數(shù)據(jù)庫的打開

      (1)在項(xiàng)目管理器中打開。(2)通過“打開”對話框打開數(shù)據(jù)庫。(3)使用命令打開數(shù)據(jù)庫,格式為:

      OPEN DATABASE[FileName |?][EXCLUSIVE I SHARED] [NOUPDATE] [VALIDATE] 考點(diǎn)2 修改和刪除數(shù)據(jù)庫

      Visual FoxPro在建立數(shù)據(jù)庫時(shí)建立了擴(kuò)展名分別為dbc、dct和dcx的3個(gè)文件,用戶不能直接修改這些文件。

      Visual FoxPro中修改數(shù)據(jù)庫實(shí)際是打開數(shù)據(jù)庫設(shè)計(jì)器,完成數(shù)據(jù)庫中各種對象的建立、修改和刪除等操作。

      可以有3種方法打開數(shù)據(jù)庫設(shè)計(jì)器。(1)從項(xiàng)目管理器中打開數(shù)據(jù)庫設(shè)計(jì)器。(2)從“打開”對話框中打開數(shù)據(jù)庫設(shè)計(jì)器。(3)使用命令打開數(shù)據(jù)庫設(shè)計(jì)器,格式為: MODIFY DATABASE[DatabaseName|?] 在項(xiàng)目管理器中不管刪除還是移去數(shù)據(jù)庫文件,都不會(huì)刪除其所包含的各個(gè)對象做口數(shù)據(jù)表)。如果要在刪除數(shù)據(jù)庫的同時(shí)刪除其所包含的數(shù)據(jù)表,就必須使用命令,格式為: DELETE DATABASE DatabaseName|?[DELETETABLES][RECYCLE] 小提示:

      在Visual FoxPro中,Open DataBase和Modify DataBase命令的區(qū)別在于:Open DataBase打開的只是數(shù)據(jù)庫的工作環(huán)境,并不會(huì)進(jìn)入數(shù)據(jù)庫設(shè)計(jì)器;Modify DataBase是打開數(shù)據(jù)庫設(shè)計(jì)器。4.2 建立數(shù)據(jù)庫表

      考點(diǎn)3 在數(shù)據(jù)庫中建立表 在數(shù)據(jù)庫中建立數(shù)據(jù)表,最直接的方法就是在數(shù)據(jù)庫設(shè)計(jì)器中利用鼠標(biāo)右鍵單擊空白處,選擇“新建表”命令,在彈出的表設(shè)計(jì)器中設(shè)置數(shù)據(jù)表結(jié)構(gòu)。另外可以在命令窗口利用OPEN DATA命令先打開數(shù)據(jù)庫,然后利用CREATE命令打開表設(shè)計(jì)器進(jìn)行數(shù)據(jù)表設(shè)計(jì),如圖4-l所示。

      圖4-1 表設(shè)計(jì)器 1字段名

      (l)自由表字段名最長為10個(gè)字符。(2)數(shù)據(jù)庫表字段名最長為128個(gè)字符。(3)字段名必須以字母或漢字開頭。

      (4)字段名可以由字母、漢字、數(shù)字和下劃線組成。(5)字段名中不能包含空格。2字段類型和寬度

      (1)字符型:可以是字母、數(shù)字等各種字符型文本,如用戶名稱。(2)貨幣型:貨幣單位,如貨物價(jià)格。(3)數(shù)值型:整數(shù)或小數(shù),如訂貨數(shù)量。(3)浮點(diǎn)型:功能類似于“數(shù)值型”,其長度在表中最長可達(dá)20位。(4)日期型:由年、月、日構(gòu)成的數(shù)據(jù)類型,如訂貨日期。

      (5)日期時(shí)間型:由年、月、日、時(shí)、分、秒構(gòu)成的數(shù)據(jù)類型,如員工上班的時(shí)間。(6)雙精度型:雙精度數(shù)慎類型,一般用于要求精度很高的數(shù)據(jù)。(7)整型:不帶小數(shù)點(diǎn)的數(shù)值類型,如訂單的行數(shù)。

      (8)邏輯型:值為“真”(.T.)或假(.F.),如表示訂單是否已執(zhí)行完。

      (9)備注型:不定長的字符型文本。在表中占4個(gè)字節(jié),表備注型文件的擴(kuò)展名為FPT。(10)通用型:用于標(biāo)記電子表格、文檔、圖片等OLE對象,在表中占4個(gè)字節(jié)。(11)字符型(二進(jìn)制)。(12)備注型(二進(jìn)制)。3空值

      一個(gè)字段是否允許為空值與實(shí)際應(yīng)用有關(guān),比如作為關(guān)鍵字的字段是不允許為空值的,而那些在插入記錄時(shí)允許暫缺的字段值往往允許為空值。4字段有效性組框

      在字段有效性組框中可以定義字段的有效性規(guī)則、違反規(guī)則時(shí)的提示信息和字段的默認(rèn)值。5顯示組框

      在顯示組框下可以定義字段顯示的格式、輸入的掩碼和字段的標(biāo)題。輸入掩碼是字段的一種屬性,用限制或控制用戶輸入的格式。標(biāo)題用于字段顯示時(shí)的標(biāo)題,如果不指定標(biāo)題則顯示字段名。當(dāng)字段名是英文或縮寫時(shí),則通過指定標(biāo)題可以使界面更友好。6字段注釋

      可以為每個(gè)字段添加注釋,便于日后或其他人對數(shù)據(jù)庫進(jìn)行維護(hù)。考點(diǎn)4 修改表結(jié)構(gòu) 在Visual FoxPro中可以對表結(jié)構(gòu)任意修改,修改表結(jié)構(gòu)和建立表結(jié)構(gòu)時(shí),表設(shè)計(jì)器界面完全一樣。修改數(shù)據(jù)表結(jié)構(gòu)時(shí),首先應(yīng)該用USE命令打開要修改的數(shù)據(jù)表,然后利用MODIFY STRUCTURE打開表設(shè)計(jì)器進(jìn)行修改,具體操作有以下幾種。(1)修改已有字段。(2)添加新字段。(3)刪除不用的字段。4.3 表的基本操作

      考點(diǎn)5 使用瀏覽器操作表

      在交互式工作方式下,最簡單、方便的方法就是使用BROWSE瀏覽器瀏覽表,打開瀏覽器的方法有多種。在項(xiàng)目管理器中將數(shù)據(jù)庫展開至表,然后單擊“瀏覽”按鈕,或直接在窗口中輸入BROWSE命令(首先應(yīng)該打開表文件)。1瀏覽器操作

      (1)下一記錄(下箭頭鍵)。(2)前一記錄(上箭頭鍵)。(3)下一頁(PageDown鍵)。(4)上一頁(PageUp鍵)。(5)下一字段(Tab鍵)。

      (6)前一字段(Shift+Tab鍵)。2修改記錄

      只需將光標(biāo)定位到要修改的記錄和字段上,就可以進(jìn)行修改了。3刪除記錄 Visual FoxPro中刪除記錄有邏輯刪除和物理刪除兩種,邏輯刪除只在記錄旁做刪除標(biāo)記(如圖4-2所示),必要時(shí)可以進(jìn)行恢復(fù)物理刪除是在邏輯刪除的基礎(chǔ)上真正地將記錄從表中刪除。要在瀏覽器中刪除有刪除標(biāo)記的記錄,可選擇“表/徹底刪除”菜單命令。

      圖4-2 增加和刪除記錄

      考點(diǎn)6 增加、刪除、修改和顯示記錄的命令 1增加記錄

      APPEND命令是在表的尾部增加記錄,格式有如下兩種。格式1:APPEND 格式2:APPEND BLANK 2插入記錄

      格式:INSERT [BEFORE][BLANK] 3刪除記錄

      刪除記錄有物理刪除和邏輯刪除兩種,Visual FoxPro用來刪除記錄的命令如下。(1)設(shè)置刪除標(biāo)記的命令

      格式:DELETE [FOR lExpressionl] 說明:如果不使用FOR短語指定邏輯條件,則只刪除當(dāng)前記錄,否則邏輯刪除滿足條件的所有記錄。

      (2)恢復(fù)記錄的命令。

      格式:RECALL [FOR lExpressionl] 說明:使用該命令恢復(fù)表中邏輯刪除的記錄,短語FOR的功能同上。(3)物理刪除有刪除標(biāo)記的記錄 格式:PACK 說明:此命令用來物理刪除當(dāng)前表中所有帶刪除標(biāo)記的記錄。(4)物理刪除表中的全部記錄 格式:ZAP 說明:不管表中記錄是否帶有刪除標(biāo)記,此命令可以一次性將當(dāng)前表中的記錄全部物理刪除,但表結(jié)構(gòu)仍保留使用此命令相當(dāng)于DELETE ALL與 PACK的連用。4修改記錄

      在Visual FoxPro中可以交互修改記錄,也可以用指定值直接修改記錄。(1)用EDIT或CHANGE命令交互式修改。(2)用REPLACE命令直接修改。5顯示記錄

      格式:LIST/DISPLAY [[FIELDS]FieldList][FOR LExpressionl][OFF] [TO PRINTER[PROMPT]|TO FILE FileName] 考點(diǎn)7 查詢定位的命令(1)用GOTO命令直接定位(2)SKIP命令

      (3)用LOCATE命令定位。

      LOCATE命令是按條件定位記錄位置,格式為: LOCATE FOR IExpressionl LOCATE命令常用結(jié)構(gòu)如下。LOCATE FOR IExpression1 DO WHILE FOUND()****處理數(shù)據(jù)*** CONTINUE ENDDO 小提示:

      連續(xù)使用DELETE ALL和PACK命令,其操作結(jié)果與ZAP命令一樣,都可以將表中的所有記錄一次性物理刪除。4.4 索引與排序

      考點(diǎn)8 索引的基本概念

      索引是對表中的記錄按照某種邏輯順序重新排列。

      (l)主索引:在指定的字段或表達(dá)式中不允許出現(xiàn)重復(fù)值的索引,且一個(gè)表只能創(chuàng)建一個(gè)主索引。

      (2)候選索引:具有與主索引相同的性質(zhì)和功能,但一個(gè)表中可以創(chuàng)建多個(gè)候選索引,其指定的字段或表達(dá)式中也不允許出現(xiàn)重復(fù)值。

      (3)唯一索引:它的“唯一性”是指索引項(xiàng)的唯一,而不是字段值的唯一。但在使用該索引時(shí),重復(fù)的索引段值只有唯一一個(gè)值出現(xiàn)在索引項(xiàng)中。

      (4)普通索引:不僅允許字段中出現(xiàn)重復(fù)值,并且索引項(xiàng)中也允許出現(xiàn)重復(fù)值。考點(diǎn)9 索引的建立 1單項(xiàng)索引

      在表設(shè)計(jì)器界面中有“字段”、“索引”和“表“3個(gè)選項(xiàng)卡,在“字段”選項(xiàng)卡中定義字段時(shí)就可以直接指定某些字段是否為索引項(xiàng),用鼠標(biāo)單擊定義索引的下拉列表框可以看到3個(gè)選項(xiàng):無、升序和降序(默認(rèn)是無)。如果選定升序或降序,則在對應(yīng)的字段上建立一個(gè)普通索引,索引名與字段名同名,索引表達(dá)式就是對應(yīng)的字段。2復(fù)合字段索引

      (1)在“索引”選項(xiàng)卡中的索引名欄目中輸入索引名。(2)在索引類型的下拉框中選擇索引類型。

      (3)單擊表達(dá)式欄右側(cè)的按鈕,打開表達(dá)式生成器。

      (4)在“表達(dá)式”文本框中輸入索引表達(dá)式(如圖4-3所示),最后單擊“確定”按鈕。

      圖4-3 表達(dá)式生成器界面

      3使用命令建立索引

      格式:INDEX ON eExpression TO IDXFileName | TAG TagName[OF CDXFileName] [FOR lExpression][COMPACT] [ASCENDING | DESCENDING] [UNIQUE | CANDIDATE] [ADDITIVE] 從索引的組織方式來講,索引共有3種類型。(1)單獨(dú)的IDX索引,是一種非結(jié)構(gòu)索引。

      (2)采用非默認(rèn)名的CDX索引,也是一種非結(jié)構(gòu)復(fù)合索引。(3)與表同名的CDX索引,是結(jié)構(gòu)復(fù)合索引。結(jié)構(gòu)復(fù)合索引文件可隨表的打開而打開,在同一個(gè)索引文件中能包含多個(gè)索引方案或索引關(guān)鍵字,在添加、更改或刪除記錄時(shí)自動(dòng)維護(hù)索引??键c(diǎn)10 索引的使用

      (l)打開索引文件,格式為: SET INDEX TO Indexfilelist(2)設(shè)置當(dāng)前索引,格式為:

      SET ORDER TO[nIndexNumber |[TAG]TagName][ASCENDING|DESCENDING](3)使用索引快速定位,格式為:

      SEEK eExpression[ORDER nIndexNumber|[TAG]TagName][ASCENDING| DESCENDING](4)刪除索引,格式為:

      DELETE TAG TagNamel

      &&TagName1為索引名 要?jiǎng)h除全部索引,可使用命令:DELETE TAG ALL 考點(diǎn)11 排序

      索引可以使用戶按照某種順序?yàn)g覽或查找表中的記錄,這種順序是邏輯的,如要對表中的記錄按物理順序重新排列,可使用SORT命令,格式為: SORT TO TableName ON FieldNainel[/A}/D][/C][,F(xiàn)ieldName2[/A|/D][/C]?][ASCEND ING | DESCENDING][FOR lExpressionl][FIELDS FieldNameList] 小提示:

      在數(shù)據(jù)庫表中只能有一個(gè)主索引,且只能在表設(shè)計(jì)器中建立。其他3種索引可以建立多個(gè),既能在表設(shè)計(jì)器中建立,也能以命令方式建立,但在自由表中不能為其創(chuàng)建主索引,只能創(chuàng)建后3種索引,同樣也可以建立多個(gè)。4.5 數(shù)據(jù)完整性

      考點(diǎn)12 實(shí)體完整性與主關(guān)鍵字

      (1)實(shí)體完整性是保證表中記錄唯一的特性,即在同一個(gè)表中不允許有重復(fù)的記錄出現(xiàn)。在Visual Pro中通過主索引和候選索引來保證數(shù)據(jù)的實(shí)體完整性。

      (2)如果一個(gè)字段的值或幾個(gè)字段的值能夠唯一標(biāo)志表中的一條記錄,則稱這個(gè)字段為候選關(guān)鍵字。在Visual FoxPro中將主關(guān)鍵字稱做主索引,將候選關(guān)鍵字稱為候選索引??键c(diǎn)13 參照完整性與表之間的關(guān)聯(lián) 1建立表之間的聯(lián)系

      參照完整性與表之間的聯(lián)系有關(guān),其含義大致是:當(dāng)插入、刪除或修改一個(gè)表中的數(shù)據(jù)時(shí),通過參照引用相互關(guān)聯(lián)的另一個(gè)表中的數(shù)據(jù),檢查對表的數(shù)據(jù)操作是否正確。

      在數(shù)據(jù)庫設(shè)計(jì)器中設(shè)計(jì)表之間的聯(lián)系時(shí),要在父表中建立主索引,在子表中建立普通索引,然后通過父表主索引和子表的普通索引建立起兩個(gè)表之間的聯(lián)系。2設(shè)置參照完整性約束

      建立參照完整性之前,首先必須清理數(shù)據(jù)庫,即物理刪除表中被邏輯刪除的記錄,然后選擇兩個(gè)關(guān)聯(lián)表之間的連線并選擇“數(shù)據(jù)庫”、“編輯參照完整性”菜單命令,打開如圖4-4所示的“參照完整性生成器”對話框。

      圖4-4 “參照完整性生成器”對話框 小提示:

      欲建立兩表之間的聯(lián)系,首先用鼠標(biāo)選中一個(gè)表的主索引,按住鼠標(biāo)左鍵不放,并拖動(dòng)鼠標(biāo)到另一個(gè)表的索引上,這時(shí)鼠標(biāo)箭頭變成小矩形狀,最后釋放鼠標(biāo)。4.6 自由表

      考點(diǎn)14 數(shù)據(jù)庫表與自由表

      自由表是不屬于任何數(shù)據(jù)庫的表。在沒有打開數(shù)據(jù)庫時(shí),所建立的表就是自由表。數(shù)據(jù)庫表與自由表之間可以相互轉(zhuǎn)化。1建立自由表的方法

      (1)在項(xiàng)目的“數(shù)據(jù)”選項(xiàng)卡中選擇“自由表”,單擊“新建”按鈕。

      (2)在沒有打開數(shù)據(jù)庫的情況下,通過“新建”對話框,選擇“表”并單擊“新建文件”按鈕。

      (3)在沒有打開數(shù)據(jù)庫的情況下,在命令窗口輸入CREATE命令,新建自由表。2數(shù)據(jù)庫表相對于自由表的特點(diǎn)

      (l)數(shù)據(jù)庫表可以使用長表名,在表中可以使用長字段名。(2)可以為數(shù)據(jù)庫表中的字段指定標(biāo)題和添加注釋。(3)可以為數(shù)據(jù)庫表中的字段指定默認(rèn)值和輸入掩碼。(4)數(shù)據(jù)庫表的字段有默認(rèn)的控件類。

      (5)可以為數(shù)據(jù)庫表規(guī)定字段級(jí)規(guī)則和記錄級(jí)規(guī)則。

      (6)數(shù)據(jù)庫表支持主關(guān)鍵字、參照完整性和表之間的聯(lián)系。(7)支持INSERT,UPDATE和DELETE事件的觸發(fā)器??键c(diǎn)15 將自由表添加到數(shù)據(jù)庫中

      (1)在數(shù)據(jù)庫設(shè)計(jì)器中可利用“數(shù)據(jù)庫”→“添加表”菜單命令,在“打開”對話框中選擇自由表文件,將其添加到數(shù)據(jù)庫中。

      (2)直接用命令方式將自由表添加到當(dāng)前數(shù)據(jù)庫中,格式為: ADD TABLE TableName|?[NAME LongTableName] 考點(diǎn)16 從數(shù)據(jù)庫中移出表

      (1)直接利用命令移出數(shù)據(jù)庫表,格式為:

      REMOVE TABLE TableName |?[DELETE][RECYCLE](2)從項(xiàng)目管理器中移出數(shù)據(jù)庫。(3)從數(shù)據(jù)庫設(shè)計(jì)器中移出數(shù)據(jù)庫。4.7 多個(gè)表的同時(shí)使用

      在Visual FoxPro中,一次可以打開多個(gè)數(shù)據(jù)庫,每個(gè)數(shù)據(jù)庫都可以打開多個(gè)數(shù)據(jù)表??键c(diǎn)17 多工作區(qū)的概念

      指定工作區(qū)的命令格式為SELECT nWorkArea | cTableAlias,每個(gè)表打開后都有兩個(gè)默認(rèn)別名,一個(gè)是表的自身名,另一個(gè)是工作區(qū)所對應(yīng)的別名。在前10個(gè)工作區(qū)中指定的默認(rèn)別名是工作區(qū)字母A~J,其后面的工作區(qū)所對應(yīng)的別名為W11~W32767。

      另外還可以在USE命令中通過ALIAS短語指定表別名。

      例如:USE學(xué)生表IN 1 ALIAS student,為學(xué)生表指定了別名student??键c(diǎn)18 使用不同工作區(qū)的表

      除了使用SELECT命令切換不同的工作區(qū)之外,也可以在一個(gè)工作區(qū)使用其他工作區(qū)的數(shù)據(jù)表。即通過短語:IN nWorkArea|cTableAlias。在表別名后加上“.”或“->”操作符,可在一個(gè)工作區(qū)中直接調(diào)用其他工作區(qū)中數(shù)據(jù)表的記錄。例如當(dāng)前工作區(qū)號(hào)為2,要調(diào)用1區(qū)上學(xué)生表中的班級(jí)號(hào)的相關(guān)字段,可使用命令:

      學(xué)生表.班級(jí)號(hào) 或?qū)W生表->班級(jí)號(hào)或A.班級(jí)號(hào)或A->班級(jí)號(hào) 考點(diǎn)19 表之間的關(guān)聯(lián)

      使用SET RELATION命令建立表間記錄指針的臨時(shí)聯(lián)系(關(guān)聯(lián))。

      格式:SET RELATION TO eExpressionl INTO nWorkAreal I cTableAliasl。

      說明:eExpressionl是指建立臨時(shí)聯(lián)系的索引關(guān)鍵字,一般是父表的主索引,子表的普通索引。用工作區(qū)號(hào) nWorkAreal或表的別名cTableAlias I說明臨時(shí)聯(lián)系是由當(dāng)前工作區(qū)的表到哪個(gè)表。利用SET RELATION TO命令將取消當(dāng)前表到所有表的臨時(shí)聯(lián)系。4.1 SQL概述 5.1 SQL概述 考點(diǎn)1 概述 1概念

      SQL是結(jié)構(gòu)化查詢語言Structured Query Language的縮寫。它包括數(shù)據(jù)查詢、數(shù)據(jù)定義、數(shù)據(jù)操縱和數(shù)據(jù)控制4部分。Visual FoxPro在SQL方面支持?jǐn)?shù)據(jù)定義、數(shù)據(jù)查詢和數(shù)據(jù)操縱功能。另外,由于Visual FoxPro自身在安全控制方面的缺陷,所以它沒有提供數(shù)據(jù)控制功能。2 SQL語言的特點(diǎn)

      (1)一種一體化的語言。

      (2)一種高度非過程化的語言。(3)語言非常簡潔。

      (4)可以直接以命令方式交互使用,也可以以程序方式使用。5.2 查詢功能

      SQL的核心是查詢,基本形式由SELECT-FROM-WHERE查詢塊組成,多個(gè)查詢塊可嵌套執(zhí)行,如表5-1所示。

      表5-1 SQL命令動(dòng)詞

      考點(diǎn)2 簡單查詢 1簡單查詢

      簡單查詢是由SELECT和FROM短語構(gòu)成的無條件查詢,或由SELECT,F(xiàn)ROM和WHERE短語構(gòu)成的條件查詢。2簡單的連接查詢

      連接是關(guān)系的基本操作之一,連接查詢是一種基于多個(gè)關(guān)系的查詢。3嵌套查詢

      嵌套查詢所要求的結(jié)果出自一個(gè)關(guān)系,但關(guān)系的條件卻涉及多個(gè)關(guān)系。其內(nèi)層基本上也是一個(gè)SELECT-FROM-WHERE查詢語句。這種簡單嵌套查詢,可使用謂詞IN或NOT IN來判斷在外層的查詢條件中是否包含內(nèi)層查詢的結(jié)果??键c(diǎn)3 特殊運(yùn)算符號(hào) 1 BETWEEN?AND?

      含義:該查詢的條件是在??范圍之內(nèi),相當(dāng)于用AND連接的一個(gè)邏輯表達(dá)式。2 LIKE 含義:它是一個(gè)字符串匹配運(yùn)算符,與之搭配使用的通配符包括“*”和“?”??键c(diǎn)4 排序

      使用SQL SELECT可以將查詢結(jié)果進(jìn)行排序,排序的短語是ORDER BY。格式:ORDER BY Order_Item[ASCIDESC][,Order_Item[ASC|DESC]?] 說明:可以按升序(ASC)或降序(DESC)排序,允許按一列或多列排序。考點(diǎn)5 計(jì)算查詢 1簡單的計(jì)算查詢

      SQL不僅具有一般的檢索能力,而且還有計(jì)算方式的檢索,用于計(jì)算檢索的函數(shù)有:COUNT(計(jì)數(shù))、SUM(求和)、AVG(計(jì)算平均值)、MAX(求最大值)及MIN(求最小值)。2分組與計(jì)算查詢

      在SQL SELECT中可以利用GROUP BY子句進(jìn)行分組計(jì)算查詢。

      格式:GROUP BY GroupColumn[,GroupColumn?][HAVING FilterCondition] 說明:可以按一列或多列分組,還可以用HAVING子句進(jìn)一步限定分組的條件。它必須跟在GROUP BY子句之后,不可單獨(dú)使用,與WHERE子句并不矛盾。考點(diǎn)6 別名和自連接查詢

      (1)SQL語句允許在二OM短語中為關(guān)系定義別名,格式為:一 <關(guān)系名><別名>(2)SQL不僅可以對多個(gè)關(guān)系進(jìn)行連接操作,也可以將同一關(guān)系與其自身進(jìn)行連接,這種連接就稱為自連接。在關(guān)系的自連接操作中,別名是必不可少的??键c(diǎn)7 使用量詞和謂詞的查詢

      與嵌套查詢或子查詢有關(guān)的運(yùn)算符,除了IN和NOT IN運(yùn)算符外,還有兩類與子查詢有關(guān)的運(yùn)算符,它們有以下兩種格式。

      (1)<表達(dá)式><比較運(yùn)算符>[ANY I ALL | SOME](子查詢)(2)[NOT]EXISTS(子查詢)EXISTS是謂詞,EXISTS或NOT EXISTS是用來檢查在子查詢中是否有結(jié)果返回,即存在元組或不存在元組。其本身并沒有進(jìn)行任何運(yùn)算或比較,只用來返回子查詢結(jié)果??键c(diǎn)8 超鏈接查詢

      (1)在新的SQL標(biāo)準(zhǔn)中支持兩個(gè)新的關(guān)系連接運(yùn)算符,這兩個(gè)新的連接運(yùn)算是左連接(*=)和右連接=*):首先保證一個(gè)表中滿足條件的元組都在結(jié)果表中,然后將滿足連接條件的元組與另一個(gè)表的元組進(jìn)行連接,不滿足連接條件的則應(yīng)將來自另一個(gè)表的屬性值置為空值。在一般SQL中超鏈接運(yùn)算符是“*=”(左連接)和“=*”(右連接)。(2)在Visual FoxPro中不支持超鏈接運(yùn)算符“*=”和“=*”,Visual FoxPro有專門的連接運(yùn)算。下面拼出SQL中超鏈接的部分語句格式: SELECT…

      FROM Table INNER|LEFT|RIGHT|FULL JOIN Table ON JoinCondition WHERE…

      考點(diǎn)9 Visual FoxPro中SQL SELECT的幾個(gè)特殊選項(xiàng)(l)顯示部分結(jié)果,格式為: TOP nExpr[PERCENT](2)將查詢結(jié)果存放到數(shù)組中,格式為: INTO ARRAY ArrayName(3)將查詢結(jié)果存放到臨時(shí)文件中,格式為: INTO CURSOR CursorName(4)將查詢結(jié)果存放到永久表中,格式為: INTO DBF|TABLE TableName(5)將查詢結(jié)果存放到文本文件中,格式為: TO FILE FileName[ADDITIVE](6)將查詢結(jié)果直接輸出到打印機(jī),格式為: TO PRINTER[PROMPT] 5.3 操作功能 考點(diǎn)10 插入

      Visual FoxPro支持兩種SQL插入命令的格式,一種是標(biāo)準(zhǔn)格式,另一種是特殊格式。1標(biāo)準(zhǔn)格式

      INSERT INTO dbf name[(frame 1[,fname2,?])] VALUES(eExpressionl[,eExpression2,?])2特殊格式

      INSERT INTO dbf _name FROM ARRAY ArrayName|FROM MEMVAR 考點(diǎn)11 更新

      SQL的數(shù)據(jù)更新命令格式如下: UPDATE TableName SET Column_Namel=eEpressionl[,Column_Name2=eExpression2?] WHERE Condition 說明:利用WHERE字句指定條件,以更新滿足條件的一些記錄的字段值,并巨一次可更新多個(gè)字段;如果不使用WHERE子句,則更新全部記錄??键c(diǎn)12 刪除

      SQL從表中刪除數(shù)據(jù)的命令格式如下:

      DELETE FROM TableName[WHERE Condition] 說明:FROM指定從哪個(gè)表中刪除記錄,WHERE指定被刪除的記錄所滿足的條件,如果不使用WHERE子句,則刪除該表中的全部記錄。小提示:

      當(dāng)一個(gè)表定義一個(gè)主索引或候選索引后,由于相應(yīng)的字段具有關(guān)鍵字的特性,即不能為空,所以只能用此命令插入記錄、)APPEND和INSERT都是插入一條空白記錄再輸入各字段的值,故不能用它們來插入記錄。5.4 定義功能 考點(diǎn)13 表的定義

      利用SQL命令建立的數(shù)據(jù)表同樣可以完成在表設(shè)計(jì)器中設(shè)計(jì)表的所有功能。格式:CREATE TABLE I DBF TableNamel[NAME LongTableName][FREE](FieldNarnel FieldType[(nFieldWidth[,nPrecision])][NULL |NOT NULL] [CHECK IExpressionl [ERROR cMessageTextl]] [DEFAULT eExpressionl] [PRIMARY KEY I UNIQUE] [PEFERENCES TableName2[AG TagName1]] [NOCPTRANS] [,F(xiàn)ieldName2?] [,PRIMARY KEY eEpression2 TAG TagName2|,UNIQUE eExpression3 TAG TagName3] [,F(xiàn)OREIGN KEY eExpression4 TagName4[NODUP] REFERENCES TableName3 [TAG TagName5]] [,CHECK lExpression2[ERROR cMessageText2]])|FROM ARRAY ArravNasne 說明:此命令除了建立表的基本功能外,還包括滿足實(shí)體完整性的主關(guān)鍵字(主索引)PRIMARY KEY、定義域完整性的CHECK約束及出錯(cuò)提示信息ERROR、定義默認(rèn)值DEFAULT等,另外還有描述表之間聯(lián)系的FOREIGN KEY和REFERENCES等。考點(diǎn)14 表的刪除

      利用SQL命令刪除表,可直接使用語句,格式為: DROP TABLE Table_name 說明:如果刪除的是自由表,則應(yīng)該將當(dāng)前打開的數(shù)據(jù)庫先關(guān)閉,才能進(jìn)行刪除。如果刪除數(shù)據(jù)庫表,則要先打開數(shù)據(jù)庫,在數(shù)據(jù)庫中進(jìn)行操作二否則,即使刪除了數(shù)據(jù)庫表,但記錄在數(shù)據(jù)庫中的信息并沒有被刪除,此后會(huì)出現(xiàn)錯(cuò)誤提示??键c(diǎn)15 表結(jié)構(gòu)的修改

      修改表結(jié)構(gòu)的命令是ALTER TABLE,該命令有3種格式。

      (1)ALTER TABLE TableNamel ADD| ALTER[COLUMN]FieldNamel FieldTvpe[(nFieldWidth[,nPrecision])][NULL |NOT NULL] [CHECK lExpressionl[ERROR cMessageTextl ]][DEFAULT eExpressionl] [PRIMARY KEY |UNIQUE] [REFERENCES TableName2[TAG TagNamel〕](2)ALTER TABLE TableNamel ALTER[COLUMN]FieldName2[NULL|NOT NULL] [SET EFAULTeExpression2][SET CHECK lExpression2[ERROR cMessageText2] [DROP 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 FOREIGN KEY[eExpression5] TAG TagName4[FOR lExpression6] REFERENCES TableName2[TAG TagName5]] [DROP FOREIGN KEY TAG TagName6[SAVE]] [RENAME COLUMN FieldName4 TO FieldName5] 考點(diǎn)16 視圖的定義 1視圖的概念及其定義(l)視圖的概念。

      Visual FoxPro中視圖是一個(gè)虛擬的表,可以是本地的、遠(yuǎn)程的或帶參數(shù)的。(2)視圖的定義,格式為:

      CREATE VIEW view name[(column_name[,column_name]?)] AS select_statement 2從單個(gè)表派生出來的視圖

      視圖一經(jīng)定義,就可以和基本表一樣進(jìn)行各種查詢,也可以進(jìn)行一些修改操作。對于最終用戶來說,有時(shí)并不需要知道操作的是基本表還是視圖。3從多個(gè)表派生出來的視圖

      視圖一方面可以限定對數(shù)據(jù)的訪問,另一方面又可以簡化對數(shù)據(jù)的訪問。4視圖的刪除

      視圖由于是從表派生出來的,所以不存在修改結(jié)構(gòu)的問題,但是視圖可以刪除。格式:DROP VIEW<視圖名> 5關(guān)于視圖的說明

      在關(guān)系數(shù)據(jù)庫中,視圖始終不真正含有數(shù)據(jù),它總是原有表的一個(gè)窗口。所以,雖然視圖可以像表一樣進(jìn)行各種查詢,但是插入、更新和刪除操作在視圖上卻有一定限制。在一般情況下,當(dāng)一個(gè)視圖是由單個(gè)表導(dǎo)出時(shí)可以進(jìn)行插入和更新操作,但不能進(jìn)行刪除操作;當(dāng)視圖是從多個(gè)表導(dǎo)出時(shí),插入、更新和刪除操作都不允許進(jìn)行。這種限制是很有必要的,它可以避免一些潛在問題的發(fā)生。5.1 查詢與視圖

      考點(diǎn)1 查詢設(shè)計(jì)器 1查詢的概念

      查詢是從指定的表或視圖中提取滿足條件的記錄,然后按照想得到的輸出類型定向輸出查詢結(jié)果。查詢以擴(kuò)展名為QPR的文件保存在磁盤上的,這是一個(gè)文本文件,它的主體是SQL SELECT語句。2查詢的建立

      建立查詢可以使用“查詢設(shè)計(jì)器”,但它的基礎(chǔ)是SQL SELECT語句。建立查詢的方法有以下幾個(gè)方面。

      (l)可以利用CREATE QUERY命令打開查詢設(shè)計(jì)器建立查詢。(2)可以利用“新建”對話框打開查詢設(shè)計(jì)器建立查詢。

      (3)可以在項(xiàng)目管理器的“數(shù)據(jù)”選項(xiàng)卡中打開查詢設(shè)計(jì)器建立查詢。(4)可直接編輯QPR文件建立查詢。建立查詢時(shí),首先進(jìn)入如圖6-1所示的界面選擇用于建立查詢的表或視圖,選擇表或視圖后,單擊“添加”按鈕。最后單擊“關(guān)閉”按鈕,進(jìn)入如圖6-2所示的查詢設(shè)計(jì)器界面。

      圖6-1 為查詢選擇表或視圖

      查詢設(shè)計(jì)器中的各選項(xiàng)卡和SQL SELECT語句的各短語是相對應(yīng)的,對應(yīng)關(guān)系如下?!白侄巍报D―SELECT短語,用于指定要查詢的數(shù)據(jù) “連接”――JOIN ON短語,用于編輯連接條件。“篩選”――WHERE短語,用于指定查詢條件。

      “排序依據(jù)”――ORDER BY短語,用于指定排序字段和排序方式?!胺纸M依據(jù)”――GROUP BY短語和HAVING短語,用于分組。

      圖6-2 查詢設(shè)計(jì)器 3查詢的運(yùn)行

      運(yùn)行查詢有下列兩種方法。

      (1)可以在項(xiàng)口管理器的“數(shù)據(jù)”選項(xiàng)卡中,展開“查詢”選項(xiàng),然后選擇要運(yùn)行的查詢文件,單擊“運(yùn)行”按鈕,可查看查詢結(jié)果。(2)在命令窗門執(zhí)行命令DO QueryFile。

      注意:此處的查詢文件名是全名,包括擴(kuò)展名QPR。4查詢?nèi)ハ?/p>

      設(shè)計(jì)查詢的目的不只是完成一種查詢功能,在查詢設(shè)計(jì)器中可以根據(jù)需要為查詢輸出定位查詢?nèi)ハ颉Mㄟ^“查詢”菜單卜的“查詢?nèi)ハ颉?,或在“查詢設(shè)計(jì)器”工具欄中單擊“查詢?nèi)ハ颉卑粹o?!安樵?nèi)ハ颉睂υ捒蛉鐖D6-3所示

      圖6-3 “查詢?nèi)ハ颉睂υ捒?各去向的含義如下。

      (1)瀏覽:在“瀏覽”(BROWSE)窗口中顯示查詢結(jié)果,這是默認(rèn)的輸出去向。(2)臨時(shí)表:將查詢結(jié)果存儲(chǔ)于一個(gè)命名的臨時(shí)只讀表中。(3)表:將結(jié)果保存在一個(gè)命名的數(shù)據(jù)表文件中。(4)圖形:查詢結(jié)果可以用于Microsoft Graph。

      (5)屏幕:在Visual FoxPro主窗口或當(dāng)前活動(dòng)輸出窗口中顯示查詢結(jié)果。(6)報(bào)表:將結(jié)果輸出到一個(gè)報(bào)表文件。(7)標(biāo)簽:將結(jié)果輸出到一個(gè)標(biāo)簽文件。小提示:

      在7種輸出去向中,只有“瀏覽”和“屏幕”兩種輸出去向才能直接看到查詢結(jié)果。6.2 視圖

      考點(diǎn)2 視圖的概念與建立 1視圖的概念

      視圖是操作表的一種手段,通過視圖可以查詢表,也可以更新表。視圖是根據(jù)表定義的,因此視圖基于表,而視圖可以使應(yīng)用更靈活,因此它又超越表。視圖是數(shù)據(jù)庫中的一個(gè)特有功能,只有在包含視圖的數(shù)據(jù)庫打開時(shí)才能使用。

      視圖兼有“表”和“查詢”的特點(diǎn),與查詢相類似的地方是可以用來從一個(gè)或多個(gè)相關(guān)聯(lián)的表中提取有用信息;與表類似的地方是可以用來更新其中的信息,并將結(jié)果永久性保存在磁盤上。

      2視圖的建立

      (l)用CREATE VIEW命令打開視圖設(shè)計(jì)器建立視圖。(2)利用“新建”對話框打開視圖設(shè)計(jì)器建立視圖。

      (3)在項(xiàng)目管理器的“數(shù)據(jù)”選項(xiàng)卡中打開視圖設(shè)計(jì)器建立視圖。(4)利用SQL命令CREATE VIEW...AS...建立視圖。3視圖設(shè)計(jì)象

      視圖設(shè)計(jì)器(如圖6一所示)與查詢設(shè)計(jì)器基本上一樣,主要有以下幾點(diǎn)不同。(1)視圖的結(jié)果保存在數(shù)據(jù)庫中,在磁盤上找不到類似的文件。

      (2)視圖可以用來更新數(shù)據(jù),因此在設(shè)計(jì)器中多了一個(gè)“更新條件”選項(xiàng)卡。(3)在視圖中沒有“查詢?nèi)ハ颉钡膯栴}。

      圖6-4 視圖設(shè)計(jì)器

      考點(diǎn)3 遠(yuǎn)程視圖與連接

      為了建立遠(yuǎn)程視圖,必須首先建立連接遠(yuǎn)程數(shù)據(jù)庫的“連接”,“連接”是Visual FoxPro數(shù)據(jù)庫中的一種對象。1定義數(shù)據(jù)源和連接

      數(shù)據(jù)源一般是ODBC數(shù)據(jù)源,開放數(shù)據(jù)庫互連ODBC是一種連接數(shù)據(jù)庫的通用標(biāo)準(zhǔn)。為了定義ODBC數(shù)據(jù)源,必須首先安裝ODBC驅(qū)動(dòng)程序。2建立連接

      建立連接的方法有以下幾種。(1)用CREATE CONNECTION命令打開“連接設(shè)計(jì)器”,或完全用命令方式建立連接。(2)通過“新建”對話框建立連接。

      (3)在項(xiàng)目管理器的“數(shù)據(jù)”選項(xiàng)卡中建立連接。3設(shè)計(jì)遠(yuǎn)程視圖

      利用數(shù)據(jù)源或連接建立的遠(yuǎn)程視圖的SQL語法要符合遠(yuǎn)程數(shù)據(jù)庫的語法,例如,SQL Server的語法和Visual FoxPro的語法就有所區(qū)別。考點(diǎn)4 視圖與數(shù)據(jù)更新

      視圖是根據(jù)基本表派生出來的,所以把它叫做虛擬表為了通過視圖能夠更新基本表中的數(shù)據(jù),需要在視圖設(shè)計(jì)器的“更新條件”選項(xiàng)卡中的左下角選中“發(fā)送SQL更新”復(fù)選框。1指定可更新的表

      如果視圖是基于多個(gè)表的,默認(rèn)可以更新“全部表”的相關(guān)字段,如果要指定只能更新某個(gè)表的數(shù)據(jù),則可以通過“表”下拉列表框選擇表 2指定可更新的字段

      在“字段名”列表框中列出了與更新有關(guān)的字段,在字段名左側(cè)有兩列標(biāo)志,“鑰匙”表示關(guān)鍵字,“鉛筆”表示更新通過單擊相應(yīng)列可以改變相關(guān)的狀態(tài),默認(rèn)可以更新所有非關(guān)鍵字字段,并且通過基本表的關(guān)鍵字完成更新,即Visual FoxPro用這些關(guān)鍵字字段來唯一標(biāo)識(shí)那些已在視圖中修改過的基本表中的記錄建議不要改變關(guān)鍵字的狀態(tài),不要試圖通過視圖來更新基本表中的關(guān)鍵字字段值,如有必要,可以指定更新非關(guān)鍵字字段值 3檢查更新的合法性 如圖6-1所示,“SQL WHERE子句包括”框中的選項(xiàng)決定哪些字段包含在UPDATE或DELETE語句的WHERE子句中,Visual FoxPro正是利用這些語句將在視圖中修改或刪除的記錄發(fā)送到遠(yuǎn)程數(shù)據(jù)源或基本表中,WHERE子句就是用來檢查自從提取記錄用于視圖中后,服務(wù)器上的數(shù)據(jù)是否已經(jīng)改變?!癝QL WHERE子句包括”框中各選項(xiàng)的含義如下。

      (l)關(guān)鍵字段:當(dāng)基本表中的關(guān)鍵字字段被改變時(shí),更新失敗。

      (2)關(guān)鍵字和可更新字段:當(dāng)基本表中任何標(biāo)記為可更新的字段被改變時(shí),更新失敗。

      (3)關(guān)鍵字和已修改字段:當(dāng)在視圖中改變的任一字段的值在基本表中已被改變時(shí),更新失敗。

      (4)關(guān)鍵字和時(shí)間戳:當(dāng)遠(yuǎn)程表上記錄的時(shí)間戳在首次檢索之后被改變時(shí),更新失敗。4使用更新方式

      “使用更新”框的選項(xiàng)決定當(dāng)向基本表發(fā)送SQL更新時(shí)的更新方式。

      (1)SQL DELETE然后INSERT:先用SQL DELETE命令刪除基本表中被更新的舊記錄,再用SQL INSERT命令向基本表中插入更新后的記錄。

      (2)SQL UPDATE:使用SQL UPDATE命令更新基本表??键c(diǎn)5 使用視圖

      視圖建立后,不但可以用它來顯示和更新數(shù)據(jù),而且可以通過調(diào)整它的屬性來提高性能,它的使用類似于表。1視圖操作

      (1)在數(shù)據(jù)庫中使用USE命令打開或關(guān)閉視圖。(2)在“瀏覽器”窗口中顯示或修改視圖中的記錄。(3)使用SQL語句操作視圖。

      (4)在文本框、表格控件、表單或報(bào)表中使用視圖作為數(shù)據(jù)源。2使用視圖

      視圖一經(jīng)建立就基本可以像基本表一樣使用,適用于基本表的命令基本都可以用于視圖。比如在視圖上也可以建立索引,此索引當(dāng)然是臨時(shí)的,視圖一關(guān)閉,索引自動(dòng)刪除,多工作區(qū)時(shí)也可以建立聯(lián)系等。但視圖不可以用MODIFY STRUCTURE命令修改結(jié)構(gòu)。因?yàn)橐晥D畢竟不是獨(dú)立存在的基本表,它是由基本表派生出來的,只能修改視圖的定義。

      小提示:

      查詢與視圖的區(qū)別是:查詢可以定義輸出去向,可以將查詢的結(jié)果靈活地應(yīng)用于表單、報(bào)表、圖形等各種場合,但是利用查詢不可以修改數(shù)據(jù);而利用視圖可以修改數(shù)據(jù),可以利用SQL將對視圖的修改發(fā)送到基本表,特別是對于遠(yuǎn)程表的操作,利用視圖是非常有效的。

      6.1表單與控件 面向?qū)ο蟮母拍?考點(diǎn)1 對象與類 1對象(Object)客觀世界里的任何實(shí)體都可以被視為對象。對象可以是具體事物,也可以指某些概念二(1)屬性:用來表示對象的狀態(tài)。(2)方法:用來描述對象的行為。2類(Class)類是對一類相似對象性質(zhì)的描述。同類對象具有相同的性質(zhì):相同的屬性及方法??键c(diǎn)2 子類與繼承 1繼承

      繼承表達(dá)了一種從一般到特殊的進(jìn)化過程。在面向?qū)ο蟮姆椒ɡ?,繼承是指基于現(xiàn)有類的方法和屬性。2類

      我們把新類稱為現(xiàn)有類的子類,而把現(xiàn)有類稱為新類的父類。一個(gè)子類的成員一般包括以下兩個(gè)方面。

      (l)從其父類繼承的成員,包括屬性、方法。(2)由子類自己定義的成員,包括屬性、方法。8.2 Visual FoxPro基類簡介 考點(diǎn)3 Visual FoxPro基類

      Visual FoxPro中所有基類共有的屬性如表8-1所示。表8-1 Visual FoxPro基類的最小屬性集

      (l)在編程方式里,對象的生成通常使用CREATE OBJECT函數(shù)來完成,格式為: CREATE OBJECT(<類名>[,<參數(shù)1>,<參數(shù)2>,?])說明:函數(shù)基于指定的類生成一個(gè)對象,并返回對象的引用。(2)對象屬性訪問及對象方法調(diào)用的基本格式為: <對象引用>.<對象屬性> <對象引用>.<對象方法>[(?)] 考點(diǎn)4 容器與控件

      Visual FoxPro中的類一般可分為兩種類型:容器類和控件類。相應(yīng)地,可分別生成容器(對象)和控件(對象)。

      (l)控件:是一個(gè)可以以圖形化的方式顯示出來并能與用戶進(jìn)行交互式的對象。(2)容器:可看成是一個(gè)特殊的控件,它能包容其他的控件或容器。(3)層次:容器內(nèi)的包容關(guān)系形成r對象的嵌套層次關(guān)系。對象的層次概念與類的層次概念是兩個(gè)完全不同的概念對象的層次關(guān)系指的是包容與被包容的關(guān)系,而類的層次指的是繼承與被繼承的關(guān)系。

      在對象的嵌套層次關(guān)系中,要引用其中的某個(gè)對象,需要指明對象在嵌套層次中的位置。對象引用的幾個(gè)屬性或關(guān)鍵字如表8-2所示。表8-2 對象引用的幾個(gè)屬性或關(guān)鍵字

      考點(diǎn)5 事件

      事件是一種由系統(tǒng)預(yù)先定義而由用戶或系統(tǒng)發(fā)出的動(dòng)作。它作用于對象,對象識(shí)別事件并做出相應(yīng)的反應(yīng)。與方法集可以無限擴(kuò)展不同的是,事件集是固定的。用戶不能定義新的事件。表8-3列出了VisualFoxPro基類的最小事件集,不管哪個(gè)基類都包含這些事件。表8-3 Visual FoxPro基類的最小事件集

      8.3 創(chuàng)建與管理表單

      考點(diǎn)6 創(chuàng)建、修改及運(yùn)行表單 1使用表單向?qū)?chuàng)建表單

      調(diào)用表單向?qū)У姆椒ㄓ卸喾N,這里只做簡單介紹。

      (l)在“項(xiàng)目管理器”窗口中,選擇“文檔”選項(xiàng)卡,選擇其中的“表單”圖標(biāo)。(2)單擊“新建”按鈕,系統(tǒng)彈出“新建表單”對話框。(3)單擊“表單向?qū)А眻D標(biāo)按鈕,打開“向?qū)нx取”對話框。(4)從列表框中選擇要使用的向?qū)В缓髥螕簟按_定”按鈕。2使用表單設(shè)計(jì)器創(chuàng)建表單

      可以使用以下3種方法中的任何一種調(diào)用表單設(shè)計(jì)器。(1)在項(xiàng)目管理器環(huán)境下調(diào)用。(2)菜單方式調(diào)用。(3)命令方式調(diào)用。3修改已有的表單

      一個(gè)表單無論是通過任何途徑創(chuàng)建的,都可以使用表單設(shè)計(jì)器進(jìn)行編輯修改。我們可以通過項(xiàng)目或使用命令“MODIFY FORM<表單名>”來打開表單設(shè)計(jì)器。4運(yùn)行表單

      可以采用下列方法運(yùn)行通過表單設(shè)計(jì)器創(chuàng)建的表單文件。

      (1)在項(xiàng)目管理器窗口中,選擇要運(yùn)行的表單,然后單擊窗口里的“運(yùn)行”按鈕。

      (2)在表單設(shè)計(jì)器環(huán)境下,選擇“表單”菜單中的“執(zhí)行表單”命令,或單擊標(biāo)準(zhǔn)工具欄上的“運(yùn)行”按鈕。

      (3)選擇“程序”菜單中的“運(yùn)行”命令,打開“運(yùn)行”對話框,然后在對話框中指定要運(yùn)行的表單文件并單擊“運(yùn)行”按鈕。(4)在命令窗口中輸入命令,格式為:

      DO FORM<表單文件名>[NAME<變量名>] WITH<實(shí)參>[,<實(shí)參>,?][LINKED][NOSHOW] 考點(diǎn)7 管理表單屬性和方法

      可以向表單添加任意數(shù)量的新屬性和新方法,并像引用表單的其他屬性和方法一樣引用它們。Visual FoxPro中表單的屬性大約有100個(gè),但絕大多數(shù)很少用到。表8-4列出了常用的一些表單屬性,這些屬性規(guī)定了表單的外觀和行為。表8-4 表單的常用屬性

      1創(chuàng)建新屬性

      向表單添加新屬性的方法如F。

      (l)選擇“表單”菜單中的“新建屬性”命令,打開“新建屬性”對話框,如圖8-1所示。(2)在“名稱”文本框中輸入新屬性的名稱。

      (3)有選擇地在“說明”列表框中輸入新建屬性的說明信息。

      圖8-1 “新建屬性”對話框

      2創(chuàng)建新方法

      向表單添加新方法的步驟如下

      (l)運(yùn)行“表單”→“新建方法程序”命令,打開“新建方法程序”對話框,如圖8-2所示。(2)在“名稱”文本框中輸入新方法名。

      (3)有選擇地在“說明”列表框中輸入新建方法的說明信息。

      圖8-2 “新建方法程序”對話框

      3編輯方法或事件代碼

      在表單設(shè)計(jì)器中,編輯方法或事件代碼的步驟如下。

      (1)選擇“顯示”菜單中的“代碼”命令,打開代碼編輯窗口,如圖8-3所示。(2)從“對象”框中選擇方法或事件所屬的對象。(3)從“過程”框中指定需要編輯的方法或事件。(4)在編輯區(qū)輸入或修改方法或事件的代碼。

      圖8-3 代碼編輯窗口

      考點(diǎn)8 常用事件與方法

      下面將以表的形式簡單介紹一下表單及控件常用的一些事件和方法,如表8-5所示。表8-5 常用的一些屬性和方法

      8.4 表單設(shè)計(jì)器

      考點(diǎn)9 表單設(shè)計(jì)器環(huán)境

      表單設(shè)計(jì)器啟動(dòng)后,在Visual FoxPro的主窗口中出現(xiàn)“表單設(shè)計(jì)器”窗口、“屬性”窗口、“表單控件”工具欄、“表單設(shè)計(jì)器”工具欄及“表單”菜單。1“表單設(shè)計(jì)器”窗口

      用戶可視化地添加和修改控件的窗口。2“屬性”窗口

      如圖8-4所示,在“屬性”窗口中包括對象框、屬性設(shè)置框、方法和事件列表。用戶可在此窗口中選擇表取中的控件,并為表單設(shè)計(jì)屬性、方法及事件。

      對于表單及控件的絕大多數(shù)屬性,其數(shù)據(jù)類型是固定的。一般來說,要為屬性設(shè)置一個(gè)字符型數(shù)值,可以在設(shè)置框中直接輸入,不需要加定界符。

      “屬性”窗口可以通過單擊“表單設(shè)計(jì)器”工具欄中的“屬性窗口”按鈕或選擇“顯示”菜單中的“屬性環(huán)境”命令打開或關(guān)閉。

      圖8-4 “屬性”窗口

      3“表單控件”工具欄

      如圖8-5所示,利用“表單控件”工具欄可以方便地向表單添加控件。

      圖8-5 “表單控件”工具欄

      除了控件按鈕外,“表單控件”工具欄還包含“選定對象”、“按鈕鎖定”、“生成器鎖定”和“查看類”4個(gè)輔助按鈕。4“表單設(shè)計(jì)器”工具欄

      “表單設(shè)計(jì)器”工具欄如圖8-6所示,它可以通過“顯示”菜單中的“工具欄”命令打開或關(guān)閉。

      圖8-6 “表單設(shè)計(jì)器”工具欄

      5“表單”菜單 “表單”菜單中的命令主要用于創(chuàng)建、編輯表單或表單集,如為表單增加新的屬性和方法等。考點(diǎn)10 控件的操作與布局 1控件的基本操作

      在表單設(shè)計(jì)器下,對表單上的控件可進(jìn)行移動(dòng)、改變大小、復(fù)制、刪除等操作。(l)選定控件。(2)移動(dòng)控件

      (3)調(diào)整控件大小。(4)復(fù)制控件。(5)刪除控件。2控件布局 利用“布局”工具欄中的按鈕,可以方便地調(diào)整表單窗口中被選控件的相對大小或位置?!安季帧惫ぞ邫诙∫酝ㄟ^單擊“表單設(shè)計(jì)器”工具欄上的“布局工具欄”按鈕或選擇“顯示”菜單中的“布局工具欄”命令打開或關(guān)閉。3設(shè)置Tab鍵次序

      當(dāng)表單運(yùn)行時(shí),用戶可以按Tab鍵選擇表單中的控件,使焦點(diǎn)在控件間移動(dòng)??丶腡ab鍵次序決定了選擇控件的次序。Visual FoxPro提供了兩種方式來設(shè)置Tab鍵次序:交互方式和列表方式。考點(diǎn)11 數(shù)據(jù)環(huán)境 1數(shù)據(jù)環(huán)境的常用屬性

      常用的兩個(gè)數(shù)據(jù)環(huán)境是AutoOpenTables和AutoCloseTables,其功能如下。

      (1)AutoOpenTables;表示當(dāng)運(yùn)行或打開表單時(shí),是否打開數(shù)據(jù)環(huán)境中的表和視圖,默認(rèn)值為邏輯真.T.)。

      (2)AutoCloseTables:表示當(dāng)釋放或關(guān)閉表單時(shí),是否關(guān)閉由數(shù)據(jù)環(huán)境指定的表和視圖,默認(rèn)值為邏輯真(.T.)。

      2打開數(shù)據(jù)環(huán)境設(shè)計(jì)器

      可通過單擊“表單設(shè)計(jì)器”工具欄中的“數(shù)據(jù)環(huán)境”按鈕,也可以選擇“顯示”菜單中的“數(shù)據(jù)環(huán)境”命令打開或關(guān)閉“數(shù)據(jù)環(huán)境設(shè)計(jì)器”窗口。3向數(shù)據(jù)環(huán)境中添加表或視圖

      (1)選擇“數(shù)據(jù)環(huán)境”菜單中的“添加”命令,或用鼠標(biāo)右鍵單擊“數(shù)據(jù)環(huán)境設(shè)計(jì)器”窗口,然后在彈出的快捷菜單中選擇“添加”命令,打開“添加表或視圖”對話框。

      (2)選擇要添加的表或視圖并單擊“添加”按鈕。如果單擊“其他”按鈕,將調(diào)出“打開”對話框,用戶可以從中選擇需要的表。4從數(shù)據(jù)環(huán)境中移去表或視圖

      在數(shù)據(jù)環(huán)境設(shè)計(jì)器環(huán)境下,按下列方法從數(shù)據(jù)環(huán)境移去表或視圖。(1)在“數(shù)據(jù)環(huán)境設(shè)計(jì)器”窗口中,單擊選擇要移去的表或視圖。(2)選擇“數(shù)據(jù)環(huán)境”菜單中的“移去”命令。

      也可以用鼠標(biāo)右鍵單擊要移去的表或視圖,然后在彈出的快捷菜單中選擇“移去”命令。當(dāng)表從數(shù)據(jù)環(huán)境中移去時(shí),與這個(gè)表有關(guān)的所有關(guān)系也將隨之消失。5在數(shù)據(jù)環(huán)境中設(shè)置關(guān)系

      如果添加到數(shù)據(jù)環(huán)境的表之間具有在數(shù)據(jù)庫中設(shè)置的永久關(guān)系,這些關(guān)系也會(huì)自動(dòng)添加到數(shù)據(jù)環(huán)境中。如果表之間沒有永久關(guān)系,可以根據(jù)需要在數(shù)據(jù)環(huán)境設(shè)計(jì)器下為這些表設(shè)置關(guān)系。6在數(shù)據(jù)環(huán)境中編輯關(guān)系

      關(guān)系是數(shù)據(jù)環(huán)境中的對象,它有自己的屬性、方法和事件。常用的關(guān)系屬性如表8-6所示。

      表8-6 常用的關(guān)系屬性

      7向表單添加字段

      我們可以利用“表單控件”工具欄方便地將一個(gè)標(biāo)準(zhǔn)控件放置到表單上,也可以從“數(shù)據(jù)環(huán)境設(shè)計(jì)器”窗口、“項(xiàng)目管理器”窗口或“數(shù)據(jù)庫設(shè)計(jì)器”窗口中直接將字段、表或視圖拖入表單,系統(tǒng)將產(chǎn)生相應(yīng)的控件并與字段相聯(lián)系。8.5 常用表單控件

      考點(diǎn)12 標(biāo)簽(Label)控件 標(biāo)簽的常用屬性如下

      (1)Caption屬性:指定標(biāo)簽的標(biāo)題文本很多類控件都具有Caption屬性。用戶可以利用該屬性為所創(chuàng)建的對象指定標(biāo)題文本。

      (2)Alignment屬性:指定標(biāo)題文本在控件中的顯示對齊方式。該屬性包括三個(gè)屬性值――0、1和2,分別代表左對齊、右對齊和中央對齊。考點(diǎn)13 命令按鈕(CommandButton)控件 命令按鈕的常用屬性如下。

      (1)Default屬性:該屬性默認(rèn)值為.F.。當(dāng)屬性為.T.時(shí),可稱為“確定”按鈕,一個(gè)表單中只能包含一個(gè)“確定”按鈕;在Windows中,當(dāng)焦點(diǎn)不在命令按鈕上時(shí),按Enter鍵,系統(tǒng)將自動(dòng)執(zhí)行該命令按鈕的Click事件代碼、(2)Cancel屬性:該屬性默認(rèn)值為.F.。當(dāng)屬性為.T.時(shí),可稱為“取消”按鈕,在表單中,可通過Esc鍵執(zhí)行該命令按鈕中的Click事件代碼一個(gè)表單中可有多個(gè)命令按鈕的Cancel屬性值為.T.。(3)Enabled屬性:指定表單或控件能否響應(yīng)用戶引發(fā)的事件。默認(rèn)的屬性值為.T.,即對象是有效的,當(dāng)Enabled=.F.時(shí),只是用來顯示只讀的信息。

      (4)Visible屬性:指定對象是可見還是隱藏。默認(rèn)的屬性值為.T.,即對象是可見的??键c(diǎn)14 命令組(CommandGroup)控件

      命令組是包含一組命令按鈕的容器控件,其常用屬性如下。

      (1)ButtonCount屬性:指定命令組中命令按鈕的個(gè)數(shù),默認(rèn)的屬性值為2。(2)Buttons屬性:用于存取命令組中各按鈕的數(shù)組。用戶可以利用該數(shù)組為命令組中的命令按鈕設(shè)置屬性或調(diào)用其方法,屬性數(shù)組下標(biāo)的取值范圍應(yīng)該在1到ButtonCount屬性值之間。(3)Value屬性:指定命令組當(dāng)前的狀態(tài)。該屬性的類型可以是數(shù)值型,也可以是字符型??键c(diǎn)15 文本框(TextBox)控件 文本框的常用屬性如下。

      (1)ControlSource屬性:可利用該屬性為文本框指定一個(gè)字段或內(nèi)存變量,運(yùn)行時(shí),文本框中首先顯示該變量的內(nèi)容

      (2)Value屬性:返回文本框的當(dāng)前內(nèi)容。該屬性的默認(rèn)值是空串。(3)PasswordChar屬性:指定文本框控件內(nèi)是顯示用戶輸入的字符還是顯示占位符。該屬性的默認(rèn)值是空串,此時(shí)沒有占位符。當(dāng)為屬性指定一個(gè)占位符(例如*)后,文本框中只顯示占位符。

      (4)InputMask屬性:指定在一個(gè)文本框中如何輸入和顯示數(shù)據(jù)。各種模式符的功能如表8-7所示。

      表8-7 模式符及其功能

      考點(diǎn)16 編輯框的常用屬性如下。

      (1)AllowTabs屬性:指定編輯框中能否使用Tab鍵。該屬性的默認(rèn)值為.F.,當(dāng)按Tab鍵時(shí),焦點(diǎn)移出編輯框。

      (2)HideSelection屬性:指定當(dāng)編輯框失去焦點(diǎn)時(shí),編輯框中選定的文本是否仍顯示為選定狀態(tài)。該屬性的默認(rèn)值為.T.,即當(dāng)編輯框失去焦點(diǎn)時(shí),編輯框中選定的文本不顯示為選定狀態(tài)(3)ReadOnly屬性:指定用戶能否編輯編輯框中的內(nèi)容。如果該屬性的默認(rèn)值為.F.,則叮以編輯編輯框中的內(nèi)容;當(dāng)屬性值為.T.時(shí),編輯框中的內(nèi)容為只讀。

      (4)ScrollBars屬性:指定編輯框是否具有滾動(dòng)條。該屬性包括“0-無” 和“2-垂直”兩個(gè)屬性值。

      (5)SelStart屬性:返回用戶在編輯框中所選文本的起始位置或插入點(diǎn)位置。屬性的有效取值范圍在0與編輯區(qū)中的字符總數(shù)之間。

      (6)SelLength屬性:返回用戶在控件的文本輸入?yún)^(qū)中所選定字符的數(shù)目,或指定要選定的字符數(shù)目。

      (7)SelText屬性:返回用戶編輯區(qū)內(nèi)選定的文本。如果沒有選定文本,將返回空串??键c(diǎn)17 復(fù)選框(CheckBox)控件 復(fù)選框的常用屬性如下。

      (1)Caption屬性:用來指定顯示在復(fù)選框旁邊的文字。

      (2)Value屬性:用來指明復(fù)選框的當(dāng)前狀態(tài),共有3種情況:0或.F.表示未被選中;1或.T.表示被選扣;2或.NULL.表示不確定,只在代碼中有效。

      (3)ControlSource屬性:指明與復(fù)選框建立聯(lián)系的數(shù)據(jù)源。作為數(shù)據(jù)源的字段變量或內(nèi)存變量,其類型可以是邏輯型或數(shù)值型。考點(diǎn)18 選項(xiàng)組(OptionGroup)控件

      選項(xiàng)組是包含若干個(gè)選項(xiàng)按鈕的一種容器控件,其常用屬性如下。(1)ButtonCount屬性:指定選項(xiàng)組中選項(xiàng)按鈕的數(shù)目,其默認(rèn)值為2,(2)Value屬性:用于指定選項(xiàng)組中哪個(gè)選項(xiàng)按鈕被選中。該屬性值的類型可為數(shù)值k1J或字符型。

      (3)ControlSource屬性:指明與選項(xiàng)組建立聯(lián)系的數(shù)據(jù)源。作為數(shù)據(jù)源的字段變量或內(nèi)存變量,其類型可以是字符型或數(shù)值型

      (4)Buttons屬性:用于存取選項(xiàng)組中每個(gè)按鈕的數(shù)組,其含義與命令組的Buttons類似??键c(diǎn)19 列表框(ListBox)控件 列表框的常用屬性如下

      (1)RowSourceType屬性與RowSource屬性:RowSourceType屬性指明列表框中的條目數(shù)據(jù)源的類型,RowSource屬性指定列表框的條目數(shù)據(jù)源。RowSourceType屬性共有10種取值范圍:0-無(默認(rèn)值)、1-值,2-別名、3-SQL語句,4-查詢(.qpr),5-數(shù)組,6-字段,7-文件,8-結(jié)構(gòu),9-彈出式菜單。(2)List屬性:用以存取列表框中數(shù)據(jù)條目的字符串?dāng)?shù)組。(3)ListCount屬性:指明列表框中數(shù)據(jù)條目的數(shù)目。(4)ColumnCount屬性:指定列表框的列數(shù)。

      (5)Value屬性:列表框中被選中的條目。該屬性可以是數(shù)值型,也可以是字符型。

      (6)ControlSource屬性:該屬性在列表框中的用法和在其他控件中的用法有所不同。用戶可以通過該屬性指定一個(gè)字段或變量用以保存用戶從列表框中選擇的結(jié)果。(7)Selected屬性:指定列表框內(nèi)的某個(gè)條目是否處于選定狀態(tài)〕(8)MultiSelect屬性:指定用戶在列表框控件內(nèi)進(jìn)行多重選定。其中,0或.F.表示不允許多重選定,為系統(tǒng)默認(rèn)值;1或.T.表示允許多重選定??键c(diǎn)20 組合框(ComboBox)控件

      組合框與列表框類似,也是用于提供一組條目供用戶從中選擇,組合框的特點(diǎn)如下。(1)對于組合框來說,通常只有一個(gè)條目是可見的。(2)組合框不提供多重選定的功能。

      (3)組合框可通過Style屬性設(shè)置其形式,共有兩種:0表示下拉組合框,2表示下拉列表框??键c(diǎn)21 表格(Gride)控件 表格是一種容器對象。一個(gè)表格對象由若十列對象組成,每個(gè)列對象包含一個(gè)標(biāo)頭對象和若干控件,它們都有自己的屬性、事件和方法。1表格的常用屬性

      (l)RecordSourceType屬性與RecordSource屬性:RecordSourceType屬性指明表格數(shù)據(jù)源類型,RecordSource屬性指定表格數(shù)據(jù)源。其中數(shù)據(jù)類型共有5種取值范圍:0-表、1-別名(默認(rèn)值)、2-提示、3-查詢(.qpr)、4-SQL語句。

      (2)ColumnCount屬性:指定表格的列數(shù),即一個(gè)表格對象所包含的列對象數(shù)目。(3)LinkMaster屬性:用于指定表格控件中所顯示的子表的父表名稱。(4)ChildOrder屬性:用于指定建立一對多的關(guān)聯(lián)關(guān)系,子表所要用到的索引。該屬性類似于SET ORDER命令。

      (5)RelationalExpr屬性:確定基于主表字段的關(guān)聯(lián)表達(dá)式。2常用的列屬性

      (1)ControlSource屬性:指定要在列中顯示的數(shù)據(jù)源,常見的是表中的一個(gè)字段。

      (2)CurrentControl屬性:指定列對象中的一個(gè)控件,該控件用以顯示和接收列中活動(dòng)單元格的數(shù)據(jù)。

      (3)Sparse屬性:用于確定CurrentControl屬性是影響列中的所有單元格還是影響活動(dòng)單元格。

      3常用的標(biāo)頭(Header)屬性

      (1)Caption屬性:指定標(biāo)頭對象的標(biāo)題文本,顯示于列頂部。(2)Alignment屬性:指定標(biāo)題文本在對象中顯示的對齊方式。考點(diǎn)22 頁框(PageFrame)控件

      頁框是包含頁面(Page)的容器對象,其常用屬性如下。

      (1)PageCount屬性:用于指明一個(gè)頁框?qū)ο笏捻搶ο蟮臄?shù)量。最小值為0,最大值為99。

      (2)Pages屬性:該屬性是一個(gè)數(shù)組,用于存取頁框中的某個(gè)頁對象。(3)Tabs屬性:指定頁框中是否顯示頁面標(biāo)簽欄。

      (4)TabStretch屬性:如果頁面標(biāo)題文本太長,可通過設(shè)置該屬性利用多行顯示。其中0表示多重行,1表示單行(默認(rèn)值)。

      (5)ActivePage屬性:返回頁框中活動(dòng)頁的頁號(hào),或使頁框中的指定頁 7.1菜單設(shè)計(jì)

      9.1 Visual FoxPro系統(tǒng)菜單 考點(diǎn)1 菜單結(jié)構(gòu) Visual FoxPro支持兩種類型的菜單:條形菜單和彈出式菜單。菜單項(xiàng)的名稱顯示于屏幕供用戶識(shí)別,菜單及菜單項(xiàng)的內(nèi)部名稱或選項(xiàng)序號(hào)則用于在代碼中引用。每一個(gè)菜單項(xiàng)都可以選擇設(shè)置一個(gè)熱鍵和一個(gè)快捷鍵。無論哪種類型的菜單,當(dāng)選擇某個(gè)選項(xiàng)時(shí)都會(huì)有一定的動(dòng)作,這個(gè)動(dòng)作可以是下列3種情況之一:執(zhí)行一條命令、執(zhí)行一個(gè)過程或激活另一個(gè)菜單。考點(diǎn)2 系統(tǒng)菜單 Visual FoxPro系統(tǒng)菜單是一個(gè)典型的菜單系統(tǒng),其主菜單是一個(gè)條形菜單。條形菜單的內(nèi)部名字為_MSYSMENU,也可看做是整個(gè)菜單系統(tǒng)的名字。

      條形菜單中常見選項(xiàng)的名稱及內(nèi)部名字如表9-1所示,各彈出式菜單的內(nèi)部名字如表9-2所示。表9-3的是“編輯”菜單中常用選項(xiàng)的選項(xiàng)名稱和內(nèi)部名字。表9-1 主菜單(MSYSMENU)常見選項(xiàng)

      表9-2 彈出式菜單的內(nèi)部名字

      表9-3 “編輯”菜單(_MEDIT)常用選項(xiàng)

      通過SET SYSMENU命令可以允許或禁止在程序執(zhí)行時(shí)訪問系統(tǒng)菜單,也可以重新配置系統(tǒng)菜單,格式如下。

      SET SYSMENU ON|OFF AUTOMATIC |TO[<彈出式菜單名表>] |TO[<條形菜單項(xiàng)名表>] |TO[DEFAULT]|SAVE|NOSAVE 小提示:

      如不帶任何參數(shù),直接SET SYSMENU TO命令,將屏蔽系統(tǒng)菜單,使系統(tǒng)菜單不可用。9.2 下拉式菜單設(shè)計(jì)

      考點(diǎn)3 菜單設(shè)計(jì)的基本過程

      用菜單設(shè)計(jì)器設(shè)計(jì)下拉式菜單的基本過程如下。(l)調(diào)用菜單設(shè)計(jì)器。

      (2)在“菜單設(shè)計(jì)器”窗口中定義菜單,指定菜單的各項(xiàng)內(nèi)容,定義完成后,通過菜單命令“保存”或直接使用快捷鍵Ctrl+W保存菜單。

      (3)通過菜單命令“菜單”*“生成”命令,產(chǎn)生可執(zhí)行的菜單程序文件(MPR)。

      (4)在命令窗口中,使用DO命令執(zhí)行菜單文件,此處的文件擴(kuò)展名MPR不能默認(rèn)。菜單設(shè)計(jì)的基本流程如圖9-1所示。

      圖9-1 菜單設(shè)計(jì)的基本流程圖 考點(diǎn)4 定義菜單

      1“菜單設(shè)計(jì)器”窗口

      “菜單設(shè)計(jì)器”窗口每頁顯示和定義一個(gè)菜單,可以是條形菜單(菜單欄),也可以是彈出式菜單(子菜單)?!安藛卧O(shè)計(jì)器”窗口打開時(shí),首先顯示和定義的是條形菜單,即主菜單名。窗口的左邊是一個(gè)列表框,其中每一行定義當(dāng)前菜單的一個(gè)菜單項(xiàng),包括“菜單名稱”、“結(jié)果”和“選項(xiàng)”3列內(nèi)容(如圖9-2所示)。(1)“菜單名稱”列。(2)“結(jié)果”列。(3)“選項(xiàng)”列。2“顯示”菜單

      在菜單設(shè)計(jì)一器環(huán)境下,系統(tǒng)“顯示”菜單會(huì)出現(xiàn)兩條命令。(1)“常規(guī)選項(xiàng)”對話框。(2)“菜單選項(xiàng)”對話框。

      圖9-2 “菜單設(shè)計(jì)器”窗口 考點(diǎn)5 用編程方式定義菜單

      無論是條形菜單還是彈出式菜單,都可以通過命令進(jìn)行定義和設(shè)計(jì)。此處介紹幾種有關(guān)菜單定義的簡單命令。(1)條形菜單定義。(2)彈出式菜單定義。

      考點(diǎn)6 為頂層表單添加菜單

      為頂層表單添加下拉式菜單的方法和過程如下。(1)在“菜單設(shè)計(jì)器”窗口中設(shè)計(jì)好下拉式菜單。

      (2)打開“常規(guī)選項(xiàng)”對話框,選中對話框右下角的“頂層表單”復(fù)選框。(3)將表單的ShowWindow屬性設(shè)置為2,使之成為頂層表單。(4)在表單的Init事件中添加調(diào)用菜單的程序代碼: DO<文件名>WITH This[,“<菜單名>”] 此處的<文件名>是指被調(diào)用的菜單程序文件(MPR),<菜單名>是為被添加的下拉式菜單的條形菜單指定的一個(gè)內(nèi)部名字。

      (5)在表單的Destroy事件中添加清除菜單的程序代碼: RELEASE MENU<菜單名>[EXTENDED] 其中EXTENDED表示在清除條形菜單時(shí)一起清除其下屬的所有子菜單。9.3 快捷菜單設(shè)計(jì)

      考點(diǎn)7 快捷菜單的建立與執(zhí)行

      與下拉式菜單相比,快捷菜單沒有條形菜單,只有彈出式菜單。建立快捷菜單的方法和過程如下。

      (1)打開“新建”對話框二

      (2)在“新建”對話框中選擇“菜單”選項(xiàng).單擊“新建文件”按鈕。

      (3)在“新建菜單”對話框中選擇“快捷菜單”選項(xiàng),打開“快捷菜單設(shè)計(jì)器”窗口。

      (4)用與設(shè)計(jì)下拉式菜單相似的方法,在“快捷菜單設(shè)計(jì)器”窗口中設(shè)計(jì)快捷菜單,生成菜單程序文件。

      (5)在快捷菜單的“清理”代碼中添加清除菜單的命令,使得在選擇、執(zhí)行菜單命令后能及時(shí)清除菜單,釋放其所占用的內(nèi)存空間,格式為: RELEASE POPUPS<快捷菜單名>[EXTENDED](6)在設(shè)計(jì)器環(huán)境下,選定需要添加快捷菜單的對象。

      (7)在選定對象的RightClick事件代碼中,添加調(diào)用快捷菜單程序的格式為: DO<快捷菜單程序文件名> 此處的文件擴(kuò)展名MPR不能默認(rèn)。

      第五篇:計(jì)算機(jī)等級(jí)考試二級(jí)VF考點(diǎn)數(shù)據(jù)常量.

      計(jì)算機(jī)等級(jí)考試二級(jí)VF考點(diǎn):數(shù)據(jù)常量 關(guān)于數(shù)據(jù)(常量)

      ★ 數(shù)據(jù)(常量)的類型有:⊙數(shù)值型(N):占8個(gè)字節(jié)。

      ⊙貨幣型(Y):占8個(gè)字節(jié)。

      ⊙字符型(C)

      ⊙日期型(D):占8個(gè)字節(jié)。

      ⊙日期時(shí)間型(T):占8個(gè)字節(jié)。

      ⊙邏輯型(L):占1個(gè)字節(jié)。

      ★ 變量:是專門用來存放數(shù)據(jù)用的。分為字段變量(字段名)和內(nèi)存變量。

      ★ 表達(dá)式:

      (1)數(shù)值表達(dá)式

      (2)字符表達(dá)式

      (3)日期時(shí)間表達(dá)式

      (4)關(guān)系表達(dá)式

      ⊙性別等于“男”: 性別=“男”

      ⊙姓名為“劉明明”: 姓名=“劉明明”

      ⊙工齡大于等于20: 工齡>=20

      (5)邏輯表達(dá)式

      ⊙性別等于“男”或等于“女”

      ⊙基本工資高于400元且低于1000元

      ⊙工齡大于等于20的未婚男職工

      ⊙職稱是“教授”或者是“副教授”

      ⊙工齡大于20年,職稱為“副教授”或“講師”的未婚男職工

      ⊙職稱為“副教授”且年齡不超過35歲的未婚女職工

      本章的相關(guān)命令

      ⊙ ?:打印輸出符,輸出時(shí)換行。

      ⊙ ?? :打印輸出符,輸出時(shí)不換行。

      ⊙ SET CENTURY ON:設(shè)置4位數(shù)字年份

      ⊙ SET CENTURY OFF:設(shè)置2位數(shù)字年份

      ⊙ STORE <表達(dá)式> TO <內(nèi)存變量>:內(nèi)存變量的賦值。

      ⊙ CLEAR:清除窗口屏幕中顯示的內(nèi)容。

      ⊙ DIMENSION、DECLARE:創(chuàng)建數(shù)組。

      ⊙ LIST MEMORY、DISPLAY:內(nèi)存變量的顯示。

      ⊙ CLEAR MEMORY:內(nèi)存變量的清除。

      下載全國計(jì)算機(jī)等級(jí)考試二級(jí)VF考點(diǎn)分析word格式文檔
      下載全國計(jì)算機(jī)等級(jí)考試二級(jí)VF考點(diǎn)分析.doc
      將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
      點(diǎn)此處下載文檔

      文檔為doc格式


      聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報(bào),并提供相關(guān)證據(jù),工作人員會(huì)在5個(gè)工作日內(nèi)聯(lián)系你,一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

      相關(guān)范文推薦

        2007年9月全國計(jì)算機(jī)等級(jí)考試二級(jí)VF筆試試題

        第二部分 物業(yè)管理基礎(chǔ)(51~150題,共100道題) 一、單項(xiàng)選擇題(51~110題,每題1分,共60分。每小題只有一個(gè)最恰當(dāng)?shù)拇鸢?,請?jiān)诖痤}卡上將所選答的相應(yīng)字母涂黑) 51、以下關(guān)于各項(xiàng)物......

        全國計(jì)算機(jī)等級(jí)考試二級(jí)VB考點(diǎn)分析之過程

        全國計(jì)算機(jī)等級(jí)考試二級(jí)VB考點(diǎn)分析之過程 6.1 Sub過程 考點(diǎn)1 建立Sub過程 通用Sub過程的結(jié)構(gòu)與前面多次見過的事件過程的結(jié)構(gòu)類似。一般格式如下:[Static][Private][Public]......

        全國計(jì)算機(jī)等級(jí)考試二級(jí)

        全國計(jì)算機(jī)等級(jí)考試二級(jí)證書 簡介 ***2432010年9月二級(jí)access 證書樣本 全國計(jì)算機(jī)等級(jí)考試和高考、全國英語四六級(jí)考試一樣,是國家教育部考試中心推出的三大權(quán)......

        全國計(jì)算機(jī)等級(jí)考試二級(jí)JAVA考點(diǎn)分析之異常處理

        全國計(jì)算機(jī)等級(jí)考試二級(jí)JAVA考點(diǎn)分析之異常處理 6.1概述 考點(diǎn):1 概述 Java為異常定義了類和關(guān)鍵字,把異常加入了Java語言的結(jié)構(gòu)體系,從而簡化了錯(cuò)誤控制代碼。異常處理將錯(cuò)誤處......

        全國計(jì)算機(jī)等級(jí)考試考點(diǎn)分析、題解與模擬(二級(jí)C)試卷

        全國計(jì)算機(jī)等級(jí)考試二級(jí)筆試試卷 基礎(chǔ)知識(shí)和C語言程序設(shè)計(jì) (考試時(shí)間120分鐘,滿分100分) 一、選擇題((1)~(40)每題1分,(41)~(50)每題2分,共60分) 下列各題A)、B)、C)、D)四個(gè)選項(xiàng)中,只有一個(gè)選項(xiàng)......

        全國計(jì)算機(jī)等級(jí)考試vf真題(精選五篇)

        一、基本操作題(共4小題,第1和2題是7分、第3和4題是8分) 在考生文件夾下,打開招生數(shù)據(jù)庫SDB,完成如下操作: 1.在KSB表中增加一個(gè)名為"備注"的字段、字段數(shù)據(jù)類型為"字符"、寬度為30......

        計(jì)算機(jī)等級(jí)考試考點(diǎn)

        全國計(jì)算機(jī)等級(jí)考試考點(diǎn)一級(jí)MS Offic 計(jì)算機(jī)基礎(chǔ)知識(shí)1 重 要 考 點(diǎn)  1計(jì)算機(jī)發(fā)展簡史  2二進(jìn)制整數(shù)與十進(jìn)制整數(shù)之間的轉(zhuǎn)換  3常用的字符編碼及漢字編碼  4關(guān)于計(jì)算......

        全國計(jì)算機(jī)等級(jí)考試考點(diǎn)申請書(五篇)

        全國計(jì)算機(jī)等級(jí)考試考點(diǎn)申請書合肥財(cái)經(jīng)職業(yè)學(xué)院尊敬的領(lǐng)導(dǎo): 為了迎接一年一度的全國計(jì)算機(jī)等級(jí)考試,我校進(jìn)一步完善考點(diǎn)設(shè)施的準(zhǔn)備工作。根據(jù)省教育局考辦《全國計(jì)算機(jī)等級(jí)考......