版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、計(jì)算機(jī)二級(jí)復(fù)習(xí)資料文件擴(kuò)展名匯總擴(kuò)展名新建修改、打開(kāi)執(zhí)行備注文件編譯文件.PJX:項(xiàng)目管理器CREATEPROJECT MODIFY PROJECT .pjt.DBF:表文件CREATE 表名USE 表名USE(關(guān)閉.fpt.DBC:數(shù)據(jù)庫(kù)文件CREATEDATABASEMODIFYDATABASEOPEN DATABSE.dct.QPR:查詢文件CREATEQUERY MODIFY QUERYDO 查詢.QPR .qpx.VUE視圖文件CREATEVIEWOPEN DATABASEUSE 視圖名.PRG:程序文件MODIFYCOMMMANDMODIFYCOMMMANDDO 程序名.fxp.S
2、CX:表單文件CREATEFORM MODIFY FORMDOFORM .sct.MNX:菜單文件CREATEMENU MODIFY MENU .mnt.MPR:菜單程序由.MNX生成DO 菜單.MPR .mpx.FRX:報(bào)表文件CREATEREPORT MODIFY REPORT .frt變量文件.mem可執(zhí)行文件.exe 生成的應(yīng)用程序.app 復(fù)合索引文件.cdx 單一索引文件.idx 控件與數(shù)據(jù)源不同的控件有不同的數(shù)據(jù)源一般的只具有:controlsourcecombo與list :還有rowsource,忽略controlsourcegird:只有它有recordsourcecomm
3、and:沒(méi)有數(shù)據(jù)源 第一章理論部分1、數(shù)據(jù)庫(kù)中的數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和存取,具有較小的冗余度、較高的數(shù)據(jù)獨(dú)立性和以擴(kuò)展性,并可以供多個(gè)用戶和多類應(yīng)用所共享。2、關(guān)系數(shù)據(jù)庫(kù)中的完整性包括域完整性(屬性的取值范圍、實(shí)體完整性(任一元組主關(guān)鍵字不為空,且在所屬的關(guān)系中唯一和參照完整性(當(dāng)一個(gè)元組的主關(guān)鍵字的值不為空時(shí),以該外部關(guān)鍵字的值作為主關(guān)鍵字的值的元組必須在相應(yīng)的關(guān)系中。3、數(shù)據(jù)庫(kù)與人工智能技術(shù)相結(jié)合形成演繹數(shù)據(jù)庫(kù),與分布式處理技術(shù)相結(jié)合形成分布式數(shù)據(jù)庫(kù),與并行處理技術(shù)相結(jié)合形成并行數(shù)據(jù)庫(kù),與多媒體技術(shù)相結(jié)合形成多媒體數(shù)據(jù)庫(kù)。4、數(shù)據(jù)庫(kù)系統(tǒng)結(jié)構(gòu)的外部層、概念層和內(nèi)部層分別對(duì)應(yīng)于數(shù)據(jù)庫(kù)
4、模式的外模式、模式和內(nèi)模式。外部層是數(shù)據(jù)庫(kù)的外部視圖內(nèi)部層是數(shù)據(jù)庫(kù)的內(nèi)部視圖或存儲(chǔ)視圖,概念層是數(shù)據(jù)庫(kù)的概念視圖。5、數(shù)據(jù)字典(DD是系統(tǒng)中各類數(shù)據(jù)定義和描述的集合。數(shù)據(jù)字典一般包括六個(gè)方面的內(nèi)容:外部實(shí)體、數(shù)據(jù)流、處理邏輯、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)元素和數(shù)據(jù)結(jié)構(gòu)。6、關(guān)系的基本運(yùn)算包括傳統(tǒng)的集合運(yùn)算即并、交、差和專門(mén)運(yùn)算即選擇、投影、聯(lián)接。7、再生成關(guān)系模型時(shí)一定要將關(guān)系規(guī)范化,關(guān)系規(guī)范化的過(guò)程是通過(guò)關(guān)系中屬性的分解和關(guān)系模式的分解來(lái)實(shí)現(xiàn)的,一般要求3NF(第三范式。8、二維表中行的順序、列的順序可以任意交換。9、E-R模型的圖形表示法:用矩形框表示實(shí)體集,菱形框表示聯(lián)系,橢圓框表示屬性。10 、數(shù)據(jù)
5、庫(kù)的核心是數(shù)據(jù)模型,數(shù)據(jù)模型有層次模型、網(wǎng)絡(luò)模型、關(guān)系模型和面向?qū)ο竽P?。目前流行的DBMS產(chǎn)品中,數(shù)據(jù)結(jié)構(gòu)模型主要采用關(guān)系模型和面向?qū)ο蟮年P(guān)系模型。11、關(guān)系模型是用二維表格的結(jié)構(gòu)形式來(lái)表示實(shí)體及實(shí)體間的聯(lián)系12、大型DBMS:Oracle、DB2、Sybase、SQL Server微機(jī)DBMS:Access,Visual FoxPro13、SQL:Structured Query Language 結(jié)構(gòu)化查詢語(yǔ)句14、數(shù)據(jù)的邏輯獨(dú)立性是通過(guò)外部層與概念層之間的映射來(lái)實(shí)現(xiàn)的,物理獨(dú)立性是通過(guò)概念層與內(nèi)部層之間的映射來(lái)實(shí)現(xiàn)的。15、在數(shù)據(jù)世界中可以用記錄(元組來(lái)描述觀念世界中的實(shí)體,用字段來(lái)描
6、述觀念世界中的實(shí)體屬性。16、數(shù)據(jù)模型是數(shù)據(jù)庫(kù)系統(tǒng)中用與數(shù)據(jù)表示和操作的一組概念和定義。數(shù)據(jù)模型通常有三部分組成:數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和數(shù)據(jù)的完整性約束條件。17、數(shù)據(jù)庫(kù)系統(tǒng)包括:數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)管理系統(tǒng)、應(yīng)用程序、用戶和計(jì)算機(jī)支持系統(tǒng)。18、對(duì)信息系統(tǒng)進(jìn)行測(cè)試,一般包括以下三種:模塊測(cè)試、系統(tǒng)測(cè)試、驗(yàn)收測(cè)試。19、關(guān)系模型通過(guò)二維表表示實(shí)體集,通過(guò)外部關(guān)鍵字表示實(shí)體間的聯(lián)系。20、關(guān)系模型的缺點(diǎn):數(shù)據(jù)冗余度大、更新異常、插入異常、刪除異常。原因:數(shù)據(jù)之間存在依賴關(guān)系解決的方法:將關(guān)系規(guī)范化(即將關(guān)系分解21、SQL包括了所有對(duì)數(shù)據(jù)庫(kù)的操作:數(shù)據(jù)定義、數(shù)據(jù)查詢、數(shù)據(jù)更新、SQL 視圖22、數(shù)據(jù)庫(kù)設(shè)
7、計(jì)步驟:系統(tǒng)規(guī)劃、系統(tǒng)分析、系統(tǒng)設(shè)計(jì)、系統(tǒng)實(shí)施、系統(tǒng)維護(hù)。23、SA:Structured analysis 結(jié)構(gòu)化分析。SA方法從最上層的組織機(jī)構(gòu)入手,采用自頂向下逐層分解的方法分析系統(tǒng),并采用形式化或半形式化的描述來(lái)表達(dá)數(shù)據(jù)和處理過(guò)程的關(guān)系。常用的描述工具有數(shù)據(jù)流程圖(DFD 和數(shù)據(jù)字典。24、系統(tǒng)設(shè)計(jì)分為三個(gè)階段:概念結(jié)構(gòu)設(shè)計(jì)、邏輯結(jié)構(gòu)設(shè)計(jì)、物理結(jié)構(gòu)設(shè)計(jì)。25、系統(tǒng)的運(yùn)行和維護(hù):(1日常維護(hù):備份和回恢復(fù)、安全維護(hù)、存儲(chǔ)空間管理、并發(fā)控制、為題解決。(2監(jiān)控和分析:收集統(tǒng)計(jì)數(shù)據(jù)、分析操作。(3擴(kuò)展和增強(qiáng):增強(qiáng)應(yīng)用程序、模式修改、DBMS版升級(jí)。(4性能調(diào)整:調(diào)整索引、調(diào)整查詢、調(diào)整事物。
8、26、數(shù)據(jù)流程圖是使用直觀的圖形符號(hào)來(lái)描述系統(tǒng)業(yè)務(wù)過(guò)程、信息流和數(shù)據(jù)要求的工具,可以比較準(zhǔn)確地表達(dá)數(shù)據(jù)和處理的關(guān)系。27、關(guān)鍵字種類:超關(guān)鍵字、候選關(guān)鍵字、主關(guān)鍵字、外部關(guān)鍵字。超關(guān)鍵字、候選關(guān)鍵字、主關(guān)鍵字能唯一確定一條記錄,外部關(guān)鍵字不能唯一確定一條記錄。28、項(xiàng)目管理器是VFP的控制中心。同一個(gè)文件可以同時(shí)屬于多個(gè)項(xiàng)目;可以從項(xiàng)目管理中把文件移去或刪除;項(xiàng)目中文件的包含與排除。29、在關(guān)系模型中,同一個(gè)關(guān)系中的不同屬性,其屬性名不可以相同。操作部分VFP的操作環(huán)境和項(xiàng)目管理器的使用要求:命令窗口的使用,選項(xiàng)對(duì)話框的使用,創(chuàng)建項(xiàng)目文件,利用項(xiàng)目管理器管理文件1、換行:?不換行:?清屏:cl
9、ear 注釋:* 退出VFP:quit2、在D盤(pán)根目錄下創(chuàng)建LX文件夾:md d:lx3、將文件ex1.doc復(fù)制到D:lx文件夾:copy file ex1.doc to D:lx4、顯示D盤(pán)Lx文件夾中所有文件的目錄:dir d:lx*.*5、刪除D盤(pán)LX文件夾中的文件ex1.doc: delete file ex1.doc第二章1、在VFP中,一共有十一種數(shù)據(jù)類型:字符型c(<=254、數(shù)值型n(內(nèi)存占8字節(jié),表中占120字節(jié)、貨幣型y (8、浮點(diǎn)型f (大小同數(shù)值型、雙精度型b (8、整型I(4、日期型t(8、日期時(shí)間型d(8、邏輯型L(1、備注型m(4、通用型g(4。2、VFP
10、可以使用常量、變量、數(shù)組、記錄和對(duì)象來(lái)存儲(chǔ)數(shù)據(jù)。這些稱為存儲(chǔ)數(shù)據(jù)的容器,簡(jiǎn)稱數(shù)據(jù)容器。3、名稱命名規(guī)則:名稱中只能包含字母、下劃線“_”、數(shù)字符號(hào)和漢字符號(hào);名稱的開(kāi)頭只能是字母、漢字或下劃線,不能是數(shù)字;除了自由表的字段名、表的索引標(biāo)識(shí)名至多只能有10個(gè)字符外,其余可以是1-128個(gè)字符;應(yīng)避免使用系統(tǒng)保留字。在變量命名時(shí),最多可以有254個(gè)字符。4、若變量與字段同名,則字段名優(yōu)先,若非要使用變量,則引用:m.x 或m->x5、內(nèi)存變量的保存SA VE TO filename內(nèi)存變量的恢復(fù)RESTORE FROM filename6、VFP最多可聲明二維數(shù)組,下標(biāo)從1開(kāi)始。數(shù)組被聲明后
11、,賦予默認(rèn)值.F.7、函數(shù)接收一個(gè)或多個(gè)參數(shù)而返回單個(gè)值,因此函數(shù)可以嵌入一個(gè)表達(dá)式中。8、用于處理數(shù)值型數(shù)據(jù),返回值也是數(shù)值型數(shù)據(jù)。1ABS( :求絕對(duì)值2MAX(:求最大值3MIN(:求最小值4INT(:取整若int(x /2=x/2,則X為偶數(shù)。5 MOD(:取模6 ROUND(:四舍五入7 SQRT(:求平方根8 RAND(:獲得01之間的隨機(jī)數(shù)9、用于處理字符型數(shù)據(jù)。1刪除前后空格ALLTRIM(刪除后綴空格TRIM(刪除前綴空格LTRIM(刪除后綴空格RTRIM(2返回一個(gè)字符串首次出現(xiàn)的位置區(qū)分大小寫(xiě)AT(不區(qū)分大小寫(xiě)ATC(3LEN(4返回子字符串SUBSTR(5LEFT(RI
12、GHT(6SPACE(你+space(1+好你好10、用于處理日期/時(shí)間類型的數(shù)據(jù)。1取系統(tǒng)日期DATE(取系統(tǒng)時(shí)間TIME(取系統(tǒng)日期和時(shí)間DATETIME(2YEAR(取一個(gè)日期的月份MONTH(取一個(gè)月的第幾天DAY(?DAY( 2010/07/25 253返回該日期是一周中的第幾天(第一天為星期日DOW(11、數(shù)據(jù)類型轉(zhuǎn)換函數(shù)1ASC(:字符ASCII ?asc('jdhfhj'1062CHR(:ASCII 字符?CHR(66B3V AL(:C N4STR(:N C?str(314.15314沒(méi)有指定寬度和小數(shù)位數(shù),默認(rèn)寬度為10?str(314.15,5314寬度為5
13、,沒(méi)有指定小數(shù)位數(shù),前導(dǎo)兩個(gè)空格?str(314.15,5,2314.1 寬度不夠首先保整數(shù)部分?str(314.15,2*寬度為2,小于整數(shù)部分寬度,溢出5DTOC(:D C6CTOD(:C D12、其他常用函數(shù)Between( type( iif( mesagebox(-返回是值型13、運(yùn)算順序由高到低:(* 或、* 、%、+14、字符“+”相當(dāng)于字符相連,字符“-”是將左側(cè)字符串的尾部空格移到相連后的字符串的右側(cè)。$,左側(cè)字符串包含在右側(cè)字符串中,結(jié)果為.T. ,否則為.F. 字符運(yùn)算符的運(yùn)算順序由高到低為:+、$15、兩個(gè)日期不能相加,但兩個(gè)日期可以相減,結(jié)果是這兩個(gè)日期相差的天數(shù)對(duì)日
14、期時(shí)間型數(shù)據(jù)同樣適用。16、關(guān)系運(yùn)算符:<、>、<=、>=、=、=。兩邊的操作數(shù)據(jù)的數(shù)據(jù)類型必須相同,運(yùn)算的結(jié)果是邏輯型17、對(duì)于字符型數(shù)據(jù)的比較:1、字符序列的設(shè)置:(從小到大Machine按機(jī)內(nèi)碼順序。(空格、大寫(xiě)字母、小寫(xiě)字母、一級(jí)漢字、二級(jí)漢字?”A” > “a”?”John” < “Rose” ?“助教” < “講師”P(pán)inYin 漢字按拼音序列。(系統(tǒng)默認(rèn)的字符序列(西文:空格、大寫(xiě)字母、小寫(xiě)字母;漢字:漢字按拼音順序Stroke 漢字按書(shū)寫(xiě)的筆畫(huà)的多少。(西文:空格、小寫(xiě)字母、大寫(xiě)字母;漢字:漢字按筆畫(huà)多少?“講師” < “教授”2
15、、比較字符串時(shí),系統(tǒng)對(duì)兩個(gè)字符串的字符從左向右逐個(gè)比較,一旦發(fā)現(xiàn)兩個(gè)對(duì)應(yīng)的字符不同,就根據(jù)此序列來(lái)決定兩個(gè)串的大小。?”Foxpro” > “Foxmail”18、關(guān)于= 和= 的比較:= :字符串精確比較。(即兩字符串必須長(zhǎng)度相等、對(duì)應(yīng)字符相同例:?”abcde” = “abcd”.F.=:比較字符串時(shí),結(jié)果受SET EXACT命令的影響。Set exact off 時(shí),如果=右邊的字符串比左邊的短,則左邊的字符串取同右邊長(zhǎng)度相同的子字符串參加比較,反之右邊的字符串比左邊的長(zhǎng)則返回.F. Set exact off ?”abcde” = “abcd”.T.,?bc=bc .F.Set
16、exact on時(shí),首先通過(guò)在字符串后面加空格的方法使左右字符串的長(zhǎng)度相等,然后進(jìn)行比較。Set exact on ?“abcde” = “abcd”? “王一平” = “王” ?“060101” = “06”其結(jié)果都為邏輯值.F.,?bc=bc .T .19、邏輯運(yùn)算符運(yùn)算順序從高到低:(、not(!、and、or。若有關(guān)系運(yùn)算符等其他運(yùn)算符和邏輯運(yùn)算符的混合運(yùn)算,邏輯運(yùn)算符的優(yōu)先級(jí)最低。20、NULL值處理1、NULL值具有以下特點(diǎn):(1等價(jià)與沒(méi)有任何值;(2與0、空字符串(“”或空格不同;(3排序優(yōu)先于其他數(shù)據(jù);(4在計(jì)算過(guò)程中或大多數(shù)函數(shù)中可以用到NULL值。(5NULL值會(huì)影響命令、
17、函數(shù)、邏輯表達(dá)式和參數(shù)行為。VFP支持的NULL 值可以出現(xiàn)在任何使用值和表達(dá)式的地方。2、幾個(gè)函數(shù)的比較X= .null. “”0 / EMPTY(X.F. .T. .T. .T.ISBLANK(X .F. .T. .F. .T.ISNULL(X.T. .F. .F. .F.3、空值的輸入在字段中交互方式:ctrl + 0 ,在表達(dá)式或程序設(shè)計(jì)中:.NULL.4、NULL值不是一種數(shù)據(jù)類型即:當(dāng)給字段或變量賦null值時(shí),該字段或變量的數(shù)據(jù)類型不變,只是值為NULL。5、空值在邏輯表達(dá)式中的行為。邏輯表達(dá)式表達(dá)式的結(jié)果X=.T. X=. F. X=nullX and .null. .null
18、. . F. .null.X or .null. .T. .null. .null.Not .null. . F. .T. .null.21、在VFP中可以用LOCAL、PRIV ATE和PUBLIC關(guān)鍵字指定變量的作用域。在命令窗口中創(chuàng)建的任何變量都是全局變量。22、在定義數(shù)組時(shí),使用DECLEAR和DIMENSION聲明的數(shù)組屬于私有數(shù)組,而使用PUBLIC命令聲明的數(shù)組屬于全局?jǐn)?shù)組,使用LOCAL 命令聲明的數(shù)組屬于局部數(shù)組。23、在VFP程序中,如果未加定義直接使用,則默認(rèn)變量為私有變量,在命令窗口中創(chuàng)建的任何變量和數(shù)組具有全局屬性。24、如果要將第一個(gè)字符為C的所有變量保存到mVar
19、內(nèi)存變量文件中,可以使用命令:Save to mVar all like c*,如果要將第一個(gè)字符為M,第三個(gè)字符為N的所有變量保存到名為RFILE的內(nèi)存變量文件中,可以使用命令: Save to rfile all like M?N*25、*和&&都能進(jìn)行程序的注釋,但*將整個(gè)命令行定義為注釋內(nèi)容且*必須為命令行的第一個(gè)字符,而&&用于命令的后面引導(dǎo)一個(gè)注釋內(nèi)容。操作部分要求:常量的表示方法、變量的賦值、常用函數(shù)的使用與表達(dá)式的構(gòu)造1、計(jì)算年齡:?year(date(-year(csrq2、計(jì)算圓的面積:store 3.3 to R(賦值s=3.14*R*R
20、(計(jì)算?round(s,3(保留三位小數(shù)3、定義一個(gè)一元數(shù)組xy和二元數(shù)組xz:dimension xy(4,xz(5,2第三章理論部分1、數(shù)據(jù)庫(kù)是一個(gè)容器,是許多相關(guān)的數(shù)據(jù)庫(kù)表及其關(guān)系的集合。2、數(shù)據(jù)庫(kù)設(shè)計(jì)的過(guò)程:(1數(shù)據(jù)需求分析(2確定需要的表(3確定表的字段(4確定表之間的關(guān)系(5對(duì)設(shè)計(jì)進(jìn)行優(yōu)化3、VFP數(shù)據(jù)庫(kù)的組成:表、本地視圖、遠(yuǎn)程視圖、連接、存儲(chǔ)過(guò)程4、一個(gè)表最多有255個(gè)字段。5、表與數(shù)據(jù)庫(kù)之間的相關(guān)性是通過(guò)雙向鏈接實(shí)現(xiàn)的。雙向鏈接包括前鏈和后鏈。前鏈:保存在數(shù)據(jù)庫(kù)文件中,包含表文件的路徑和表名。后鏈:保存在表文件中,包含數(shù)據(jù)庫(kù)名及其路徑。6、把分散在相關(guān)表中的數(shù)據(jù)通過(guò)聯(lián)結(jié)條件把
21、它們收集到一起,構(gòu)成一張“虛表”,這張“虛表”就是視圖。視圖分為:本地視圖和遠(yuǎn)程視圖7、連接是保存在數(shù)據(jù)庫(kù)中的一個(gè)定義,指定了數(shù)據(jù)源的名稱。建立遠(yuǎn)程數(shù)據(jù)連接的目的是創(chuàng)建遠(yuǎn)程視圖。8、存儲(chǔ)過(guò)程是指在數(shù)據(jù)庫(kù)數(shù)據(jù)上執(zhí)行特定操作并存儲(chǔ)在數(shù)據(jù)庫(kù)文件中的程序代碼。9、數(shù)據(jù)字典是指存儲(chǔ)在數(shù)據(jù)庫(kù)中用于描述所管理的表和對(duì)象的數(shù)據(jù)。每一個(gè)數(shù)據(jù)庫(kù)都帶有一個(gè)數(shù)據(jù)字典,存儲(chǔ)在數(shù)據(jù)庫(kù)文件中??捎胐isplay database命令查看數(shù)據(jù)庫(kù)中的信息。10、數(shù)據(jù)庫(kù)是一個(gè)包容器,但并不在物理上包容任何附屬對(duì)象,在數(shù)據(jù)庫(kù)中僅存儲(chǔ)了指向表文件的路徑指針。11、每創(chuàng)建一個(gè)新的數(shù)據(jù)庫(kù)都將生成三個(gè)文件:數(shù)據(jù)庫(kù)文件(.DBC,關(guān)聯(lián)的數(shù)據(jù)
22、庫(kù)備注文件(.DCT,關(guān)聯(lián)的數(shù)據(jù)庫(kù)索引文件(.DCX12、創(chuàng)建數(shù)據(jù)庫(kù):create database 打開(kāi)數(shù)據(jù)庫(kù):OPEN DATABASE設(shè)置當(dāng)前數(shù)據(jù)庫(kù):SET DATABASE TO 數(shù)據(jù)庫(kù)名13、檢查數(shù)據(jù)庫(kù)的有效性鏈接被破壞后可以使用VALIDATE DATABASE命令重建鏈接如:OPEN DATABASE testdataVALIDATE DATABASE RECOVER如果是從磁盤(pán)意外地刪除了某個(gè)庫(kù)文件,而表文件中仍保留對(duì)該數(shù)據(jù)庫(kù)的后鏈,這個(gè)表就不能被添加到其他數(shù)據(jù)庫(kù)中,這時(shí)需要從表中刪除后鏈,使用命令: FREE TABLE 表文件名14、關(guān)閉數(shù)據(jù)庫(kù)CLOSE DATEBASES
23、CLOSE DATABASES ALL關(guān)閉所有打開(kāi)的數(shù)據(jù)庫(kù)和其中的表、所有打開(kāi)的自由表、所有工作區(qū)內(nèi)所有索引和格式文件。CLOSE ALL關(guān)閉所有的數(shù)據(jù)庫(kù)、表、索引以及各種設(shè)計(jì)器。15、刪除數(shù)據(jù)庫(kù)正確的方法是:利用項(xiàng)目管理器“移去”按鈕進(jìn)行刪除。說(shuō)明:此種方法(1可以使與該數(shù)據(jù)庫(kù)相關(guān)的一系列文件.dbc .dcx.dct一起刪除;(2使該數(shù)據(jù)庫(kù)包含的數(shù)據(jù)庫(kù)表自動(dòng)變成自由表。此種方法只能刪除文件本身,但不會(huì)刪除該數(shù)據(jù)庫(kù)所包含的表中的鏈接信息。16、表的記錄必須用一個(gè)公共的結(jié)構(gòu)來(lái)存儲(chǔ),這個(gè)公共結(jié)構(gòu)就是表的結(jié)構(gòu)。表的記錄和表的結(jié)構(gòu)組成表。17、表結(jié)構(gòu)主要包括:字段名、字段的數(shù)據(jù)類型、字段的寬度、小數(shù)
24、位數(shù)、空值(NULL支持字段的寬度(1字段寬度必須能足夠容納可能的最長(zhǎng)的數(shù)據(jù)信息。(2一些數(shù)據(jù)類型的寬度是固定的。貨幣型、日期型、日期時(shí)間型和雙精度型為8字節(jié);邏輯型為1字節(jié);整型、備注型、通用型為4字節(jié)。整數(shù)部分的寬度+小數(shù)點(diǎn)1位+小數(shù)位數(shù)寬度18、VF P系統(tǒng)啟動(dòng)后,系統(tǒng)默認(rèn)當(dāng)前工作區(qū)號(hào)為1。一個(gè)工作區(qū)中只能打開(kāi)一張表19、工作區(qū)是指用以標(biāo)識(shí)一張打開(kāi)的表的區(qū)域(一塊內(nèi)存區(qū)域。打開(kāi)一個(gè)表時(shí),必須為該表指定一個(gè)工作區(qū)。每個(gè)工作區(qū)都有一個(gè)編號(hào)(1-32767和別名(AJ20、函數(shù)SELECT( 用來(lái)測(cè)試當(dāng)前工作區(qū)的區(qū)號(hào)21、如果一個(gè)表同時(shí)在多個(gè)工作區(qū)中打開(kāi),且均未指定別名,則在第一次打開(kāi)的工作區(qū)
25、中別名與表名相同,其他工作區(qū)中用AJ,W11W32767表示。22、表的關(guān)閉1、界面操作2、使用命令USE關(guān)閉當(dāng)前工作區(qū)中的表USE IN 別名| 工作區(qū)關(guān)閉非當(dāng)前工作區(qū)中的表COLSE ALL /CLOSE DATABASE/ CLOSE TABLES關(guān)閉所有工作區(qū)中表3、在退出VFP時(shí),所有的表被關(guān)閉23、表的獨(dú)占與共享使用1、工具選項(xiàng)2、使用SET EXCLUSIVE 命令SET EXCLUSIVE OFF設(shè)置“共享”為默認(rèn)打開(kāi)方式SET EXCLUSIVE ON設(shè)置“獨(dú)占”為默認(rèn)打開(kāi)方式3、強(qiáng)行用一種方式打開(kāi)在用命令打開(kāi)表時(shí),加子句“SHARED”(共享或“EXCLUSIVE”(獨(dú)占來(lái)
26、指定打開(kāi)方式。USE xs SHARED共享方式打開(kāi)xs表USE js EXCLUSIVE獨(dú)占方式打開(kāi)js表24、記錄的定位方式:絕對(duì)定位:指把指針移動(dòng)到指定的位置。相對(duì)定位:把指針從當(dāng)前位置開(kāi)始,相對(duì)于當(dāng)前記錄向前或向后移動(dòng)若干個(gè)記錄位置。條件定位:指按照一定的條件自動(dòng)地在整張表和表的某個(gè)指定范圍中查找符合該條件的記錄。如果找到,則把指針定位到該記錄上,否則將定位到整張表或表的指定范圍的末尾。25、記錄定位的實(shí)現(xiàn):GOTO N / SKIP nRecordsLOCATE FOR 條件范圍 / CONTINUE幾個(gè)范圍選項(xiàng)的含義:ALL 表中全部記錄Next n 從當(dāng)前記錄開(kāi)始的n條記錄Rec
27、ord n 僅對(duì)n這條記錄Rest 當(dāng)前記錄及其后的所有記錄。For與while的區(qū)別For 是指表中所有滿足條件的記錄While 是指當(dāng)前記錄及其連續(xù)滿足條件的記錄,一旦碰到不滿足條件的記錄,即使下面還有滿足條件的記錄,則停止定位。26、數(shù)據(jù)的復(fù)制復(fù)制表結(jié)構(gòu):語(yǔ)法:COPY STRUCTURE TO TablenameFIEDS FieldList 功能:用當(dāng)前選擇的表結(jié)構(gòu)創(chuàng)建一個(gè)新的表結(jié)構(gòu)。如:USE JS, COPY STRUCTURE TO GZ FIELDS gh,xm,csrq復(fù)制表文件:COPY TO 文件名范圍 字段列表 FOR 條件; TYPE SDF | XLS |DELI
28、MITED WITH Delimiter |WITH BLANK | WITH TAB |WITH CHARACTER Delimiter例:將學(xué)生表復(fù)制到EXCEL文件中。USE XS ,COPY TO XS01 XLS27、記錄的順序有:邏輯順序(表中記錄的存儲(chǔ)順序和物理順序(表被打開(kāi)使用時(shí),記錄的處理順序注:物理順序和邏輯順序可以相同也可以不同,但實(shí)際應(yīng)用中往往不同。28、對(duì)有序文件進(jìn)行排序,可以有兩種方法:1、把原表記錄按某個(gè)邏輯順序重新寫(xiě)到一個(gè)新的文件中,新表與原表大小相同,記錄數(shù)相等。不同的僅僅是記錄的物理順序。2、建立一個(gè)邏輯順序號(hào)和物理順序號(hào)的對(duì)照表,將對(duì)照表保存到一個(gè)新文件中
29、。生成對(duì)照表的速度比重寫(xiě)一遍快。對(duì)照表的文件比實(shí)際表文件小得多。實(shí)際應(yīng)用中,常要從多個(gè)角度查找表文件。29、索引是由一系列記錄號(hào)組成的一個(gè)列表。記錄號(hào)在列表中的順序是按照各個(gè)記錄的索引關(guān)鍵字的值,從小到大或從大到小進(jìn)行排列的。30、用多個(gè)字段建立索引表達(dá)式,應(yīng)注意:1表達(dá)式的計(jì)算結(jié)果影響索引的結(jié)果如:“xs.ximing+xs.xb”和“xs.xb+xs.ximing”2用多個(gè)“數(shù)值型”字段求和建立的索引表達(dá)式,索引將按字段和,而不是字段本身。3不同類型字段構(gòu)成一個(gè)表達(dá)式時(shí),必須轉(zhuǎn)換數(shù)據(jù)類型。常用轉(zhuǎn)換函數(shù):STR( ,DTOC( 等31、索引標(biāo)識(shí)(Tag即索引關(guān)鍵字的名稱,也稱索引名。32、四
30、種索引類型:(1主索引在數(shù)據(jù)表中每張表只能創(chuàng)建一個(gè)主索引。組成主索引的關(guān)鍵字的字段或表達(dá)式在表的所有記錄中不能有重復(fù)值。(2候選索引指定的關(guān)鍵字段或表達(dá)式中不允許有重復(fù)值。一張表中可以建立多個(gè)候選索引。(3普通索引允許關(guān)鍵字段或表達(dá)式中的值出現(xiàn)重復(fù)。一張表中可以建立多個(gè)普通索引。在普通索引上查找的記錄不具唯一性。(4唯一索引允許關(guān)鍵字段或表達(dá)式中的值出現(xiàn)重復(fù),但僅存儲(chǔ)其中的第一個(gè)。33、索引文件的種類索引本身不改變表中數(shù)據(jù)的物理順序,只是把索引保存到另一個(gè)文件中,這個(gè)文件就是索引文件。1、結(jié)構(gòu)復(fù)合索引文件cdx與對(duì)應(yīng)的表文件的主文件名相同,在創(chuàng)建時(shí)系統(tǒng)自動(dòng)給定。與表文件同時(shí)打開(kāi)、更新和關(guān)閉。2
31、、非結(jié)構(gòu)復(fù)合索引文件cdx文件名由用戶給出。打開(kāi)表時(shí),對(duì)應(yīng)的非復(fù)合結(jié)構(gòu)索引文件不自動(dòng)打開(kāi),需用命令。3、獨(dú)立索引文件idx只存儲(chǔ)一個(gè)索引的索引文件,一般作為臨時(shí)索引文件。好處是查找速度快。也不會(huì)隨表的打開(kāi)而打開(kāi)。34、創(chuàng)建結(jié)構(gòu)復(fù)合索引需注意的問(wèn)題(1不能對(duì)備注型字段和通用型字段建立索引。(2不要建立無(wú)用的索引,多于的索引將降低系統(tǒng)性能。35、設(shè)置主控索引主控索引在某一時(shí)刻只有一個(gè)索引對(duì)表起作用,這個(gè)索引稱為主控索引??梢允菑?fù)合索引文件中的一個(gè)索引標(biāo)識(shí),也可以是臨時(shí)索引文件。1打開(kāi)表的同時(shí)設(shè)置主控索引指定復(fù)合索引文件的主控標(biāo)識(shí)。USE 表文件名ORDER TAG 標(biāo)識(shí)名OF cdx 文件名指定獨(dú)
32、立索引文件為主控索引文件。USE 表文件名ORDER idx 文件名按照索引編號(hào)指定主控索引。USE 表文件名ORDER 索引編號(hào)編號(hào)的方式是:首先編號(hào).idx文件,接著是結(jié)構(gòu)復(fù)合索引文件中的標(biāo)識(shí),最后對(duì)任何非結(jié)構(gòu)復(fù)合索引文件的標(biāo)識(shí)按其創(chuàng)建順序編號(hào)。2打開(kāi)表后再設(shè)置主控索引界面方式,命令方式:SET ORDER TO 索引編號(hào)| idx 文件| TAGTAG名OF cdx 文件;IN 工作區(qū)| 別名 ASCENDING | DESCENDING 36、利用索引快速定位記錄(SEEK(1SEEK命令只能在具有索引的表中使用。(2并且SEEK命令只能基于索引關(guān)鍵字進(jìn)行搜索。(3SEEK命令的結(jié)果反
33、映在FOUND(函數(shù)上,如果有相匹配的記錄, SEEK命令的結(jié)果將使記錄指針定位在首次匹配的記錄上FOUND(的結(jié)果為.T.;否則指針指向文件尾,FOUND(的結(jié)果為.F.。(4同時(shí)SEEK命令的結(jié)果還影響其他函數(shù):RECNO(、EOF(、BOF(5函數(shù)SEEK(的作用= SEEK命令+ FOUND(函數(shù)37、當(dāng)數(shù)據(jù)庫(kù)表移出數(shù)據(jù)庫(kù)成為自由表后,字段的擴(kuò)展屬性和數(shù)據(jù)庫(kù)表屬性都消失,因?yàn)檫@些特性都是數(shù)據(jù)庫(kù)所特有的,只有結(jié)構(gòu)復(fù)合索引還保留著,結(jié)構(gòu)復(fù)合索引文件中的主索引變成候選索引。38、相關(guān)表之間的數(shù)據(jù)的一致性指的是相關(guān)表之間的主關(guān)鍵字和外部關(guān)鍵字之間數(shù)據(jù)的一致性。39、如果一張表在多個(gè)工作區(qū)打開(kāi)而
34、未指定別名,則第一次打開(kāi)的工作區(qū)中的表的別名與表名相同,其他工作區(qū)用AJ及W11W32726表示。40、delete 命令要求表必須事先打開(kāi),而delete-sql命令不必,且無(wú)論表示獨(dú)占方式打開(kāi)還是以共享方式打開(kāi),都不印象刪除標(biāo)志的設(shè)置。Pack,zap命令要求表必須以獨(dú)占方式打開(kāi),pack,徹底刪除帶有刪除標(biāo)記的記錄,zap,刪除表中所有記錄,僅保留表結(jié)構(gòu)。41、fcount(返回已打開(kāi)表的字段數(shù),field(n返回第n個(gè)字段的字段名。Reccount(函數(shù)返回表中的記錄數(shù),不受刪除標(biāo)記的影響。42、一張數(shù)據(jù)庫(kù)表只能屬于一個(gè)數(shù)據(jù)庫(kù)。43、參照完整性的一半要求:1、字表中的每一個(gè)記錄在對(duì)應(yīng)的
35、表中必須有一個(gè)父記錄。2、在子表中插入記錄時(shí),其外部關(guān)鍵字必須是父表主關(guān)鍵字值中的一個(gè)。3、在父表中刪除記錄時(shí),與該記錄有關(guān)的子表中的記錄必須全部刪除。44、參照完整性規(guī)則更新規(guī)則刪除規(guī)則插入規(guī)則當(dāng)父表中記錄的關(guān)鍵字值被更新時(shí)觸發(fā)當(dāng)父表中記錄的關(guān)鍵字值被刪除時(shí)觸發(fā)當(dāng)在子表中插入或更新記錄時(shí)觸發(fā)級(jí)聯(lián)用新的關(guān)鍵字值更新字表中的所有相關(guān)記錄刪除子表中所有相關(guān)記錄限制若子表中有相關(guān)記錄則禁止更新若子表中有相關(guān)記錄則禁止刪除若父表中不存在匹配的關(guān)鍵字值,則禁止插入忽略允許更新,不管子表中的相關(guān)記錄允許刪除,不管子表中的相關(guān)記錄允許插入45、有關(guān)數(shù)據(jù)庫(kù)及其對(duì)象向的常用函數(shù)1、dbc(返回當(dāng)前打開(kāi)的數(shù)據(jù)庫(kù)完
36、整文件名,該函數(shù)無(wú)需參數(shù)。2、dbsed函數(shù)返回指定的數(shù)據(jù)庫(kù)文件是否已經(jīng)打開(kāi)的狀態(tài)。打開(kāi)返回.t.,否則則返回.f.。3、dbgetprop(返回當(dāng)前數(shù)據(jù)庫(kù)的屬性,或者返回?cái)?shù)據(jù)庫(kù)中表、表的字段或視圖屬性,且返回值均為字符型。例、返回xs表的記錄有效性規(guī)則:?dbgetprop(xs,table,ruleexpression 返回xh字段的有效性規(guī)則:?dbgetprop(xh, field,ruleexpression 4、dbsetprop(可以給當(dāng)前數(shù)據(jù)庫(kù)或當(dāng)前數(shù)據(jù)庫(kù)中表、表的字段或視圖設(shè)置屬性,該函數(shù)智能設(shè)置它們的部分屬性,對(duì)于表來(lái)說(shuō),可以設(shè)置字段的標(biāo)題和注釋。46、觸發(fā)器是綁定在表上的
37、邏輯表達(dá)式,當(dāng)對(duì)表進(jìn)行記錄的插入、修改和刪除操作時(shí),將自動(dòng)觸發(fā)相應(yīng)的觸發(fā)器,計(jì)算邏輯表達(dá)式的值,如果返回F,將不進(jìn)行相應(yīng)的操作。操作部分1、創(chuàng)建教師表的命令如下:CREATE TABLE js2(gh C(5 NOT NULL,xm ,xm C(8,xb(2,ximing C(18 ,; gl N(2,0,csrq D,jbgz N(7,2,jl M NULL 2、添加字段將bjmc(班級(jí)名稱字段添加到xs表中ALTER TABLE xs ADD COLUMN bjmc C(123、修改字段將bjmc(班級(jí)名稱字段的寬度改為18ALTER TABLE xs ALTER COLUMN bjmc
38、C(184、重命名字段將bjmc改為bjALTER TABLE xs RENAME COLUMN bjmc TO bj5、刪除字段將bj字段刪除ALTER TABLE xs DROP COLUMN bj6、當(dāng)前工作區(qū):select (0 當(dāng)前未被使用的最小工作區(qū): select 07、向?qū)W生表中插入新記錄INSERT INTO xs(xh,xm,xb,ximingVALUES(“950106”, “高山”, “男”,“ ” 8、從其他表中追加記錄1、利用菜單:表/追加記錄2、命令:APPEND BLANK /APPEND FROM FileName9、篩選記錄:SET FILTER TO 條件
39、表達(dá)式篩選字段:SET FIELD TO FieldList10、當(dāng)前記錄指針的值可用函數(shù)RECNO(進(jìn)行測(cè)試。11、函數(shù)RECNO( 返回當(dāng)前記錄號(hào)( 數(shù)值型BOF( 測(cè)試記錄指針是否在文件頭(邏輯型EOF( 測(cè)試記錄指針是否在文件尾(邏輯型12、要將教師表中所有工齡不滿60的教師的工齡加1的命令為:UPDATE js SET gl=js.gl+1 WHERE gl<60或REPLACE gl with gl+1 for gl<6013、對(duì)教師表中年齡超過(guò)60歲的教師加注刪除標(biāo)記:USE JSDELETE FOR (DATE( -CSRQ/365>6014、對(duì)教師表中工齡大
40、于30的教師設(shè)置刪除標(biāo)記DELETE FROM JS WHERE (DATE( -CSRQ/365>6015、標(biāo)記要?jiǎng)h除的記錄:DELETE/DELETE FROM 表名WHERE 過(guò)濾條件表達(dá)式,徹底刪除記錄利用菜單或PACK命令,恢復(fù)帶刪除標(biāo)記的記錄RECALL 命令的使用,對(duì)帶刪除標(biāo)記記錄的訪問(wèn):DELETE(函數(shù)測(cè)試當(dāng)前表的當(dāng)前記錄是否帶有刪除標(biāo)記SET DELETED ON,忽略標(biāo)有刪除標(biāo)記的記錄SET DELETED OFF,允許訪問(wèn)帶刪除標(biāo)記的記錄16、創(chuàng)建索引:創(chuàng)建教師表的普通索引,要求按基本工資從小到大排序。USE JS ;INDEX ON JBGZ TAG JBGZ創(chuàng)
41、建教師表的侯選索引,要求按工號(hào)從大到小排序。USE JS;INDEX ON GH TAG JS_GH CANDIDATE ASCENDING 創(chuàng)建教師表的唯一索引,要求按性別從小到大排序。USE JS;INDEX ON XB TAG XB UNIQUE創(chuàng)建教師表的非結(jié)構(gòu)復(fù)合索引文件,要求按姓名從小到大排序。USE JS;INDEX ON XM TAG XM OF JS1.CDX創(chuàng)建教師表的獨(dú)立索引文件,要求按姓名從小到大排序。USE JS;INDEX ON XM TO XM1.IDX17、索引的刪除(1在“表設(shè)計(jì)器”中刪除(2用DELETE TAG 命令刪除索引標(biāo)識(shí)18、瀏覽dz表中讀者編號(hào)一
42、E開(kāi)頭的男讀者信息:Browse for left(dzbh,1=”E” and xb=”男”19、篩選出年齡在20歲以下的讀者的xm,csrq:Set filter to year(date(-year(csrq<=20;Set field to xm,csrqBrowse20、用delete-sql命令和delete命令給ts表中出版日期在2000年以前的記錄設(shè)置刪除標(biāo)志:delete-sql命令:delete from ts where year(cbrq<2000;delete命令:use ts ;delete for year(cbrq<200021、用recall
43、命令恢復(fù)單價(jià)在100緣以上的記錄的刪除標(biāo)志:recall for dj>10022、利用命令徹底刪除ts表中的第三條記錄:Delete from ts where recno(=3;pack23、將dz表中所有性別為男的記錄復(fù)制到dz2表中,僅僅復(fù)制xm,xb兩個(gè)字段。Copy to dz2 for xb=”男” field xm,xb24、創(chuàng)建候選索引sh,按書(shū)號(hào)的降序排列:Index on sh tag desc candidate創(chuàng)建普通索引rqcs ,先按入庫(kù)日期排序,入庫(kù)日期相同的再按入庫(kù)冊(cè)數(shù)排序,僅作用于書(shū)號(hào)開(kāi)頭為B的圖書(shū)Index on dtoc(rkrq,1+str(rk
44、cs tag rqcs for left(sh,1=B第四章理論部分1、創(chuàng)建查詢的方法有:查詢向?qū)А⒉樵冊(cè)O(shè)計(jì)器、select-sql命令2、打開(kāi)“查詢?cè)O(shè)計(jì)器”開(kāi)始建立查詢方法: “項(xiàng)目管理器” 或“文件”菜單和工具欄中使用CREATE QUERY命令打開(kāi)“查詢?cè)O(shè)計(jì)器”3、使用查詢?cè)O(shè)計(jì)器建立查詢打開(kāi)“查詢?cè)O(shè)計(jì)器”開(kāi)始建立查詢 定義輸出字段(字段選項(xiàng)卡 設(shè)置篩選條件(篩選選項(xiàng)卡 設(shè)置排序依據(jù)(排序依據(jù)選項(xiàng)卡 運(yùn)行查詢 保存查詢文件 4、查詢的運(yùn)行:1、do chaxun.qpr 2、“查詢?cè)O(shè)計(jì)器”窗口處于打開(kāi)狀態(tài): 按鈕或“查詢”菜單下的“運(yùn)行查詢”項(xiàng)3、“項(xiàng)目管理器”中:單擊“運(yùn)行”按鈕5、查詢
45、的本質(zhì) 查詢文件保存的是SELECT 命令, 而不是查詢的結(jié)果。 查詢的結(jié)果是動(dòng)態(tài)的、 只讀的 創(chuàng)建查詢必須基于確定的數(shù)據(jù)源(類型上:可以是自由表、數(shù)據(jù)庫(kù)表或視圖。 數(shù)量上:可以是單張表或多張表。6、如何判別一個(gè)查詢是否需要進(jìn)行分組:一般地說(shuō),如果題意中有統(tǒng)計(jì)的要求,而且出現(xiàn)了各、每等字樣。一般地說(shuō),在各、每等字樣后緊跟的詞,就是分組的依據(jù)。但也有一些分組查詢中不出現(xiàn)各或每字樣,這些查詢需要從題意中分析出。7、查詢輸出去向8、聯(lián)接類型:左聯(lián)接、右聯(lián)接、內(nèi)聯(lián)接、完全聯(lián)接。內(nèi)聯(lián)接 兩張表中僅滿足條件的記錄(最普通的聯(lián)接類型左聯(lián)接聯(lián)接條件左邊表的所有記錄,和聯(lián)接條件右邊表中滿足聯(lián)接條件的記錄 右聯(lián)接
46、 聯(lián)接條件右邊表的所有記錄,和聯(lián)接條件左邊表中滿足聯(lián)接條件的記錄。 完全聯(lián)接 左聯(lián)接記錄并右聯(lián)接記錄9、當(dāng)查詢中涉及三張或三張以上的表,向查詢?cè)O(shè)計(jì)器添加數(shù)據(jù)表時(shí),要注意這多張表的添加順序。原則是:紐帶表不能首先和最后添加。10、SQL (Structured Query Language ,結(jié)構(gòu)化查詢語(yǔ)言是美國(guó)國(guó)家標(biāo)準(zhǔn)局ANSI 確定的關(guān)系型數(shù)據(jù)庫(kù)語(yǔ)言的標(biāo)準(zhǔn)。11、VFP 支持如下SQL 命令:1、SELECT-SQL指定查詢條件并執(zhí)行查詢命令,并且從表中檢索指定的數(shù)據(jù)。2、ALTER TABLE-SQL修改一張已存在的表。3、CREATE CURSOR-SQL 輸出去向類型 說(shuō) 明 瀏覽 在
47、“瀏覽”窗口中顯示查詢結(jié)果(默認(rèn) 臨時(shí)表 將查詢結(jié)果存儲(chǔ)在一張命名的臨時(shí)只讀表中,臨時(shí)表只存在于內(nèi)存中,當(dāng)臨時(shí)表被關(guān)閉時(shí),表將從內(nèi)存中刪除。 表 使查詢結(jié)果保存為一個(gè)表文件(.dbf ,表文件將永久的保存在磁盤(pán)上。 圖形 使查詢結(jié)果可用于Microsoft Graph 應(yīng)用程序。 屏幕 在VFP 主窗口或當(dāng)前活動(dòng)窗口中顯示查詢結(jié)果。 報(bào)表 將輸出送到一個(gè)報(bào)表文件(.frx 。 標(biāo)簽 將輸出送到一個(gè)標(biāo)簽文件(.lbx 。創(chuàng)建一張臨時(shí)表。4、CREATE TABLE-SQL創(chuàng)建一張新表。5、DELETE-SQL使用SQL語(yǔ)法將表中的記錄加上刪除標(biāo)志。6、INSERT-SQL在已存在表的末尾追加一條
48、新記錄。7、UPDATE-SQL更新表中的記錄,可以基于SELECT-SQL語(yǔ)句結(jié)果更新。UPDATE-SQL命令只能用來(lái)更新單張表中的記錄。12、組合查詢UNION子句UNION子句要遵守下列的規(guī)則:(1不能使用UNION來(lái)組合子查詢。(2兩個(gè)SELECT-SQL命令的查詢結(jié)果中的列數(shù)必須相同。(3兩個(gè)SELECT-SQL查詢結(jié)果中的對(duì)應(yīng)列必須有相同的數(shù)據(jù)類型和寬度。(4只有最后的SELECT-SQL中可以包含ORDER BY子句,而且按編號(hào)指出所輸出的列。13、查詢(Query主要是從表中檢索或統(tǒng)計(jì)出所需數(shù)據(jù)。視圖(View不僅具有查詢的功能,而且可以改變視圖中記錄的值,并把更新結(jié)果送回到
49、源表中。14、視圖是:視圖可以使數(shù)據(jù)暫時(shí)從數(shù)據(jù)庫(kù)中分離成為“游離”數(shù)據(jù),以便在主系統(tǒng)之外 收集和修改數(shù)據(jù)。視圖是數(shù)據(jù)庫(kù)的一個(gè)組成部分,是基于表的并且可以更新的數(shù)據(jù)集合。 視圖兼有表和查詢的特點(diǎn)。 15、可以創(chuàng)建兩種類型的視圖:遠(yuǎn)程視圖:使用SQL語(yǔ)法從遠(yuǎn)程O(píng)DBC(開(kāi)放式數(shù)據(jù)互連數(shù)據(jù)源中選擇信息。本地視圖:使用VFP SQL語(yǔ)法從視圖或表中選擇信息。16、使用CREATE SQL VIEW命令創(chuàng)建視圖CREATE SQL VIEW 視圖名AS SQL _SELECT 語(yǔ)句例:CREATE SQL VIEW JS-VIEW AS SELECT * FROM JXSJ!JS17、處理視圖類似于處理
50、表,可以進(jìn)行如下操作:1、訪問(wèn)視圖2、視圖的修改、重命名和刪除3、用數(shù)據(jù)字典定制視圖4、集成視圖18、查詢與視圖的聯(lián)系與區(qū)別1、查詢和視圖的聯(lián)系(1都是檢索數(shù)據(jù)的方法,視圖是特殊的查詢。(2本質(zhì)上都是SELECT-SQL命令。(3具有相同的數(shù)據(jù)源和輸出類型,查詢和視圖的設(shè)計(jì)器基本相同。2、查詢與視圖的區(qū)別(1 視圖是一個(gè)虛表,必須基于數(shù)據(jù)庫(kù);而查詢操作不必基于數(shù)據(jù)庫(kù)。(2 視圖沒(méi)有單獨(dú)的文件來(lái)存放視圖,視圖的SELEC-SQL命令存儲(chǔ)在數(shù)據(jù)庫(kù)中;而查詢存放在.QPR文件中的,查詢文件中存儲(chǔ)的是SELECT-SQL命令。(3 視圖可以修改;查詢不能修改,是只讀的。(4 利用遠(yuǎn)程視圖可查詢本地?cái)?shù)據(jù)
51、表或視圖以外的數(shù)據(jù)源;查詢只能查詢本地?cái)?shù)據(jù)表或視圖。(5 查詢不能作為其它查詢或視圖的數(shù)據(jù)源;而視圖可以作為數(shù)據(jù)源。19、基于兩個(gè)表創(chuàng)建查詢時(shí),兩個(gè)表可以無(wú)同名字段。操作部分1、基于單個(gè)表的查詢示例例:基于教師表(js,查詢所有50歲以上的教師的工號(hào)和姓名Select js.gh,js.xm from jxsj!js where year(date(-year(csrq>=50 例:從高到低顯示cj表中“60001”號(hào)課程的學(xué)生的學(xué)號(hào)和成績(jī)Select cj.xh,cj.cj from jxsj!cj; where cj.kcdh=“60001”; order by cj desc(或o
52、rder by 2 desc2、基于多個(gè)表的查詢示例例:基于學(xué)生表xs和院系專業(yè)表yxzy,查詢學(xué)生的學(xué)號(hào)、姓名和專業(yè)名稱Select xs.xh,xs.xm,yxzy.zymc; from jxsj! xs inner join jxsj!yxzy; on xs.yxzydm=yxzy.yxzydm;例:基于成績(jī)表(cj和學(xué)生表(xs,查詢成績(jī)不及格的學(xué)生學(xué)號(hào)和姓名,多門(mén)課程不及格的學(xué)生只顯示一次。SELECT DISTINCT cj.xh,xs.xm ; FROM jxsj! xs INNER JOIN jxsj! cj; ON xs.xh=cj.xh; WHERE cj.cj<60
53、或:SELECT DISTINCT cj.xh,xs.xm;FROM jxsj! xs, jxsj! cj; WHERE xs.xh=cj.xh AND cj.cj<603、含有合計(jì)字段的查詢例:基于成績(jī)表cj和課程表kc,查詢每門(mén)課程的課程代碼、課程名稱、人數(shù)、平均分、最高分和最低分,并把查詢結(jié)果保存到kc_maxcj表文件中。Select cj.kcdm as 課程代碼,kcmc as 課程名稱,count(* as 人數(shù); avg(cj as 平均分,max(cj as 最高分,min(cj as 最低分; from jxsj!js inner join jxsj!kc on cj
54、.kcdm=kc.kcdm; group by cj.kcdm into table kc_maxcj例:查詢信息管理與信息系統(tǒng)專業(yè)成績(jī)總分在500分上的學(xué)生的姓名、總分及平均分,查詢結(jié)果按總分降序排列Select xs.xm,sum(cj.cj as 總分,avg(cj.cj as 平均分; from jxsj!yxzy inner join jxsj!xs inner join jxsj!cj; on xs.xh=cj.xh; on xs.yxzydm=yxzy.yxzydm; where yxzy.yxmc=“信息管理與信息系統(tǒng)”; group by 1; having 總分>=5
55、00; order by 2 desc4、子查詢示例(其中的一個(gè)查詢結(jié)果作為另一個(gè)查詢的篩選條件例:基于教師表js和任課表rk,查詢已擔(dān)任課程的教師的姓名如果不用子查詢,該查詢的SELECT-SQL語(yǔ)句為:select distinct js.xm from jxsj!js,jxsj!rk; where js.gh=rk.gh。如果用子查詢,該查詢的SELECT-SQL語(yǔ)句為:Select js.xm from jxsj!js; where js.gh in (select distinct rk.gh from jxsj!rk5、組合查詢示例例:基于教師表js和學(xué)生表xs,查詢?nèi)熒麊?
56、要求輸出字段:院系專業(yè)代碼、類別、姓名和性別,并按院系專業(yè)代碼排序SELECT js.yxzydm AS 院系專業(yè)代碼,教師 AS 類別,; js.xm AS 姓名,js.xb as 性別FROM jxsj!jsUNION;SELECT xs.yxzydm AS 院系專業(yè)代碼,學(xué)生 AS 類別,; xs.xm AS 姓名,xs.xb as 性別FROM jxsj!xsORDER BY 1例:基于成績(jī)表cj,查詢各個(gè)分?jǐn)?shù)段的學(xué)生得分人數(shù),要求結(jié)果中包含兩個(gè)字段:分?jǐn)?shù)段類型和人數(shù),并按分?jǐn)?shù)段類型降序排序SELECT “90100” AS 分?jǐn)?shù)段類型,count(* AS 人數(shù);FROM jxsj!cj Wher
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度個(gè)人婚慶貸款合同(浪漫婚禮籌備)4篇
- 二零二五版藝術(shù)展覽館場(chǎng)地租賃與藝術(shù)品展示服務(wù)合同3篇
- 2025年度個(gè)人砌磚工程承包施工材料回收與再利用合同3篇
- 二零二五年度5人合資成立體育健身俱樂(lè)部的合伙協(xié)議3篇
- 2025年托盤(pán)租賃與智能物流系統(tǒng)集成合同
- 2025年度住宅小區(qū)車位使用權(quán)購(gòu)買(mǎi)合同12篇
- 河南省二零二五年度商品房買(mǎi)賣(mài)合同問(wèn)答8篇
- 西安市2025年度汽車租賃合同糾紛處理辦法2篇
- 2025年度品牌數(shù)字化轉(zhuǎn)型實(shí)施合同范本
- 2025年度商鋪買(mǎi)賣(mài)合同(含裝修費(fèi)用分?jǐn)倕f(xié)議)
- 慈溪高一期末數(shù)學(xué)試卷
- 天津市武清區(qū)2024-2025學(xué)年八年級(jí)(上)期末物理試卷(含解析)
- 《徐霞客傳正版》課件
- 江西硅博化工有限公司年產(chǎn)5000噸硅樹(shù)脂項(xiàng)目環(huán)境影響評(píng)價(jià)
- 高端民用航空復(fù)材智能制造交付中心項(xiàng)目環(huán)評(píng)資料環(huán)境影響
- 量子醫(yī)學(xué)成像學(xué)行業(yè)研究報(bào)告
- DB22T 3268-2021 糧食收儲(chǔ)企業(yè)安全生產(chǎn)標(biāo)準(zhǔn)化評(píng)定規(guī)范
- 辦事居間協(xié)議合同范例
- 正念減壓療法詳解課件
- 華為HCSA-Presales-IT售前認(rèn)證備考試題及答案
- GB 30254-2024高壓三相籠型異步電動(dòng)機(jī)能效限定值及能效等級(jí)
評(píng)論
0/150
提交評(píng)論