




已閱讀5頁(yè),還剩88頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
數(shù)據(jù)庫(kù)應(yīng)用基礎(chǔ)教程,中南大學(xué)出版社,2,5 數(shù)據(jù)庫(kù)及其查詢與視圖,5.1 SQL語(yǔ)言 5.2 設(shè)計(jì)數(shù)據(jù)庫(kù) 5.3 在數(shù)據(jù)庫(kù)中查詢數(shù)據(jù) 5.4 視圖,3,5.1 SQL語(yǔ)言,SQL語(yǔ)言(Structured Query Language,簡(jiǎn)稱SQL,結(jié)構(gòu)化查詢語(yǔ)言)是關(guān)系數(shù)據(jù)庫(kù)標(biāo)準(zhǔn)語(yǔ)言。 SQL語(yǔ)言是一種非過(guò)程化語(yǔ)言,它面向集合操作,對(duì)數(shù)據(jù)提供自動(dòng)導(dǎo)航。 SQL語(yǔ)言的幾個(gè)特點(diǎn): 非過(guò)程化。在SQL語(yǔ)言中,只要求用戶提出“做什么”,而無(wú)需指出“怎么做”。 一體化。集DDL(數(shù)據(jù)定義語(yǔ)言)、DML(數(shù)據(jù)操作語(yǔ)言)、DCL(數(shù)據(jù)控制語(yǔ)言)為一體。 兩種使用方式,統(tǒng)一的語(yǔ)法結(jié)構(gòu)。一種為聯(lián)機(jī)交互使用方式;一種為嵌入某種高級(jí)程序設(shè)計(jì)語(yǔ)言的程序中,以實(shí)現(xiàn)數(shù)據(jù)庫(kù)操作。,4,SQL語(yǔ)句語(yǔ)言精練,其數(shù)據(jù)查詢、數(shù)據(jù)定義、數(shù)據(jù)操作、數(shù)據(jù)控制等命令只用了9個(gè)動(dòng)詞,它們是: 數(shù)據(jù)定義: CREATE,DROP,ALTER 數(shù)據(jù)查詢: SELECT 數(shù)據(jù)操作: INSERT,UPDATE,DELETE 事務(wù)控制: GRANT,REVOKE,5,5.11 數(shù)據(jù)定義語(yǔ)句(DDL),數(shù)據(jù)定義語(yǔ)句是SQL中用來(lái)生成、修改、刪除關(guān)系數(shù)據(jù)庫(kù)的表、視圖等基本要素的語(yǔ)言部分。它允許數(shù)據(jù)庫(kù)用戶來(lái)創(chuàng)建或重新構(gòu)造數(shù)據(jù)庫(kù)對(duì)象,如創(chuàng)建或刪除一個(gè)數(shù)據(jù)庫(kù)表。 1. 關(guān)于數(shù)據(jù)庫(kù)的數(shù)據(jù)定義語(yǔ)句 (1) 建立數(shù)據(jù)庫(kù): CREATE DATABASE; (2) 更改數(shù)據(jù)庫(kù): ALTER DATABASE; (3) 刪除數(shù)據(jù)庫(kù): DROP DATABASE;,6,2、關(guān)于數(shù)據(jù)表的數(shù)據(jù)定義語(yǔ)句 (1) 創(chuàng)建表 命令格式: CREATE TABLE ( 列級(jí)完整性約束條件, 列級(jí)完整性約束條件,); 說(shuō)明: 是所要定義表的名字 。表名必須以字母開頭,最大長(zhǎng)度為30個(gè)字符。 即屬性名(要求列名唯一)。 完整性約束條件(對(duì)數(shù)據(jù)庫(kù)表才起作用):就是當(dāng)向某列輸入數(shù)據(jù)時(shí)所必須遵守的規(guī)則,當(dāng)用戶操作表中的數(shù)據(jù)時(shí),由數(shù)據(jù)庫(kù)管理系統(tǒng)自動(dòng)檢查操作是否違背這些完整性約束條件。,7,例1. 建立一個(gè)學(xué)生關(guān)系;,操作命令: CREATE TABLE student (sh NUMBER(6), 學(xué)號(hào) Xm C(6), 姓名 Xb C(2), 性別 Csny D , 出生年月 Xdm C(3) 系代碼 ),8,2 更改表 在實(shí)際操作中,可能需要對(duì)已創(chuàng)建的表進(jìn)行修改,如增加新列、增加新的完整性約束條件或刪除已有的完整性約束條件等。SQL提供了ALTER TABLE來(lái)完成這一功能。 命令格式: ALTER TABLE ADD 列級(jí)完整性約束條件 DROP ;,9,說(shuō)明: 是所要修改的基本表的名字; ADD子句用于增加新列和新的完整性約束條件,如果表中已經(jīng)存在數(shù)據(jù)的話,則所增加的列不能定義為NOT NULL,以免與完整性約束條件相抵觸; DROP子句用于刪除指定的完整性約束條件;,ALTER TABLE ADD 列級(jí)完整性約束條 DROP 列級(jí)完整性約束條件;,10,例2:在student 表中增加新列jxj(獎(jiǎng)學(xué)金),類型為數(shù)值型,寬度為5,小數(shù)位為2。 操作命令: ALTER TABLE student ADD jxj n(5,2) 3. 刪除表 當(dāng)某個(gè)表不再需要時(shí),可以使用SQL的DROP TABLE語(yǔ)句進(jìn)行刪除,其一般格式為: DROP TABLE 例如:刪除當(dāng)前盤當(dāng)前目錄中表名為GZ1.DBF的文件。 操作命令: DROP TABLE GZ1,11,5.1.2 數(shù)據(jù)查詢語(yǔ)句SELECT,數(shù)據(jù)查詢是數(shù)據(jù)庫(kù)的重要操作,SQL語(yǔ)言提供了SELECT語(yǔ)句用于數(shù)據(jù)庫(kù)的查詢,該語(yǔ)句具有靈活的使用方法和豐富的功能。 命令格式: SELECT ALL|DISTINCT , FROM , WHERE GROUP BY HAVING ORDER BY ASC|DESC;,12,說(shuō)明:,SELECT說(shuō)明執(zhí)行查詢操作; 指查詢結(jié)果表中包含的列名; DISTINCT說(shuō)明要去掉重復(fù)的記錄; FROM短語(yǔ)說(shuō)明要查詢的數(shù)據(jù)來(lái)自哪些表,可以對(duì)一個(gè)或多個(gè)基本表或視圖進(jìn)行查詢。 WHERE短語(yǔ)說(shuō)明查詢的條件; GROUP BY短語(yǔ)用于對(duì)查詢結(jié)果進(jìn)行分組,可以利用它進(jìn)行分組匯總; HAVING短語(yǔ)必須跟隨GROUP BY使用,用來(lái)限定分組必須滿足的條件; ORDER BY短語(yǔ)用來(lái)對(duì)查詢結(jié)果進(jìn)行排序; 注意:WHERE短語(yǔ)和HAVING短語(yǔ)區(qū)別。WHERE短語(yǔ)的作用對(duì)象是基本表或視圖,而HAVING短語(yǔ)的作用對(duì)象是組;各個(gè)短語(yǔ)之間的位置不能隨意更改。,13,應(yīng)用舉例:,例3.查詢RSDA表中性別為男且ZC為教授的職工。 SELECT * FROM RSDA WHERE XB=“男” AND ZC=“教授” 例4. 查詢RSDA表中性別為男的職工,顯示時(shí)只顯示部門編號(hào)、姓名、性別和職稱內(nèi)容。 SELECT bmbh,xm,xb,zc FROM RSDA WHERE XB=“男”,14,在SELECT 子句后,還可以用表達(dá)式來(lái)代替屬性名指定,以滿足對(duì)查詢結(jié)果的要求。 例5. 在rsda表中,jbgz屬性表示職工的月工資,如果想查詢職工的年工資,查詢語(yǔ)句如下: SELECT XM,JBGZ*12 an_jbgz FROM RSDA 例6. 在工資后面注明單位是人民幣(元)。 SELECT XM,JBGZ*12an_jbgz, 元 RMB FROM RSDA,15,5.1.3 數(shù)據(jù)操作語(yǔ)句(DML),數(shù)據(jù)操作語(yǔ)句允許用戶對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行修改更新。 1. INSERT語(yǔ)句 SQL的數(shù)據(jù)插入語(yǔ)句INSERT語(yǔ)句通常有兩種形式。一種是插入一條記錄,另一種是插入子查詢結(jié)果,后者一次可以插入多條記錄。 (1) 插入單個(gè)記錄 INSERT INTO 表名(屬性列1 ,) VALUES (常量1 ,常量2);,16,其功能是將新記錄插入指定表中。 的值為常量1; 的值為常量2,; 如果某些屬性列在INTO子句中沒有出現(xiàn),則新記錄在這些列上將取空值。 在表定義時(shí)說(shuō)明了NOT NULL的屬性列不能取空值,否則會(huì)出錯(cuò)。 若INTO子句中沒有指明任何列名,則新插入的記錄必須在每個(gè)屬性列上均有值。,INSERT INTO 表名(屬性列1 ,)VALUES (常量1 ,常量2);,17,(2) 插入多個(gè)記錄 子查詢嵌套在INSERT語(yǔ)句中,可以將一張表的查詢結(jié)果輸入到另一張表中。 INSERT INTO 新表名 (屬性列1 ,屬性列2) 子查詢; 注意:此功能在vf6.0中沒有。,18,例7:向?qū)W生表中插入一個(gè)新的學(xué)生記錄。 INSERT INTO student (sh,xm,xb,csny,xdm,jxj) VALUES(199801,王小平,女, 1983/12/14,01,300) 或 INSERT INTO student VALUES(199801,王小平,女, 1983/12/14,01,300) 因?yàn)椴迦氲氖且粭l完整的記錄。 例8. 在上例中暫時(shí)不輸入出生年月。 INSERT INTO student VALUES(199804,劉海艷,女,NULL,01,380),19,2. UPDATE語(yǔ)句 UPDATE 表名 SET 列名=表達(dá)式,列名=表達(dá)式, WHERE 條件; 功能:修改指定表中滿足WHERE子句條件的記錄。 SET子句用于指定修改方法,即用表達(dá)式的值取代相應(yīng)的屬性列。 如果省略WHERE子句,則表示要修改表中的所有記錄。 例如:將rsda表中性別為男的職工基本工資加500元。 UPDATE RSDA SET JBGZ=JBGZ+500 WHERE XB=“男“,20,3. DELETE語(yǔ)句 DELETE FROM WHERE ; 其功能是從指定表中刪除滿足WHERE子句條件的所有記錄。 如果省略WHERE子句,則表示刪除表中的全部記錄。 例如:刪除RSDA表中職稱為“助教”的職工。 DELETE FROM RSDA WHERE ZC=“助教”,21,5.1.4 事務(wù)控制語(yǔ)句,1. GRANT 命令 SQL語(yǔ)言用GRANT語(yǔ)句向用戶授予操作權(quán)限。 命令格式: GRANT ,, ON TO ,, WITH GRANT OPTION;,22,不同類型的操作對(duì)象有不同的操作權(quán)限: 屬性列和視圖的操作權(quán)限有5種:查詢(SELECT)、插入(INSERT)、更新(UPDATE)、刪除(DELETE)以及這四種權(quán)限的總和(ALL PRIVILEGES)。 基本表的操作權(quán)限有7種:查詢(SELECT)、插入(INSERT)、更新(UPDATE)、刪除(DELETE)、修改表(ALTER)和建立索引(INDEX)以及這六種權(quán)限的總和(ALL PRIVILEGES)。 對(duì)數(shù)據(jù)庫(kù)可以有建立表(CREATETAB)的權(quán)限,該權(quán)限屬于DBA,可由DBA授予普通用戶, 普通用戶擁有此權(quán)限后可以建立基本表,并擁有該基本表的一切操作權(quán)限。,23,若選用了WITH GRANT OPTION子句,則獲得某種權(quán)限的用戶還可以把這種權(quán)限授予別的用戶,即可以傳播該權(quán)限。因此,應(yīng)該慎用或不用WITH GRANT OPTION子句,以控制自己的數(shù)據(jù)資源,避免不必要的損失。,24,2. REVOKE命令 授予的權(quán)限可以由DBA(數(shù)據(jù)庫(kù)管理員)或者其它授權(quán)者用REVOKE語(yǔ)句收回。 命令格式: REVOKE ,, ON FROM ,,;,25,5.2 設(shè)計(jì)數(shù)據(jù)庫(kù),使用自由表還是數(shù)據(jù)庫(kù)表保存要管理的數(shù)據(jù)取決于管理數(shù)據(jù)之間是否存在關(guān)系以及關(guān)系的復(fù)雜程度。 數(shù)據(jù)庫(kù)表文件與自由表文件一樣,其擴(kuò)展名仍然為 .DBF,數(shù)據(jù)庫(kù)文件的擴(kuò)展名為.DBC。 數(shù)據(jù)庫(kù)設(shè)計(jì)的方法有二種: 命令方式; 數(shù)據(jù)庫(kù)設(shè)計(jì)器。,26,5.2.1 用命令方式設(shè)計(jì)數(shù)據(jù)庫(kù),1. 創(chuàng)建數(shù)據(jù)庫(kù) 命令格式: CREATE DATABASE 數(shù)據(jù)庫(kù)名 | ? 功能:創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)并且打開它。 例:CREATE DATABASE Zgxx.dbc 新建立的數(shù)據(jù)庫(kù)里面是空的,用戶可以通過(guò)向數(shù)據(jù)庫(kù)中添加表、表之間的關(guān)系等。,27,2. 在數(shù)據(jù)庫(kù)中添加、創(chuàng)建和移去表 打開數(shù)據(jù)庫(kù)后,可以創(chuàng)建新表,或向數(shù)據(jù)庫(kù)中添加已有的自由表,或從數(shù)據(jù)庫(kù)中移去表,被移去的表則變成自由表。 例如:向數(shù)據(jù)庫(kù)Zgxx中添加Rsda、Bmda、Gz三個(gè)表(數(shù)據(jù)庫(kù)文件名和表文件名可省去擴(kuò)展名)。 操作命令: OPEN DATABASE Zgxx ADD TABLE Rsda ADD TABLE Bmda ADD TABLE Gz,28,例如:在數(shù)據(jù)庫(kù)中Zgxx中創(chuàng)建Rsda、Bmda、Gz三個(gè)新表。 操作命令: OPEN DATABASE Zgxx CREATE TABLE Rsda (BMBH C(2),BH C(5),XM C(8),XB C(2),HF L,CSNY D,ZC C(10),JBGZ N(6,2),XW G,JL M) CREATE TABLE Bmda (BMBH C(2),MC C(20) CREATE TABLE Gz (BMBH C(2),BH C(5),XM C(8),BT N(6,2),KK N(6,2),SFGZ N(7,2) 表名后括號(hào)內(nèi)指出了表內(nèi)各字段名、字段數(shù)據(jù)類型和寬度。新建的表自動(dòng)屬于創(chuàng)建該表時(shí)打開的數(shù)據(jù)庫(kù)。,29,又如:在數(shù)據(jù)庫(kù)中Zgxx中移去Rsda表。 操作命令: OPEN DATABASE Zgxx REMOVE TABLE Rsda 3. 數(shù)據(jù)庫(kù)的關(guān)閉與刪除 數(shù)據(jù)庫(kù)關(guān)閉命令: CLOSE DATABASE ALL,表示關(guān)閉所有數(shù)據(jù)庫(kù)。 數(shù)據(jù)庫(kù)刪除命令: DELETE DATABASE DELETETABLES 對(duì)于數(shù)據(jù)庫(kù)刪除命令,有DELETETABLES子句時(shí)表示刪除數(shù)據(jù)庫(kù)及所屬數(shù)據(jù)庫(kù)表,否則僅刪除數(shù)據(jù)庫(kù),所屬數(shù)據(jù)庫(kù)表變成自由表。刪除數(shù)據(jù)庫(kù)前必須關(guān)閉數(shù)據(jù)庫(kù),30,4. 創(chuàng)建關(guān)系 關(guān)系數(shù)據(jù)庫(kù)中有一對(duì)一、一對(duì)多、多對(duì)多三種關(guān)系模型。在VFP中,只處理前兩種關(guān)系,對(duì)于多對(duì)多的關(guān)系,需轉(zhuǎn)換成兩個(gè)一對(duì)多的關(guān)系實(shí)現(xiàn)。 在數(shù)據(jù)庫(kù)中可以建立表間的永久關(guān)系和臨時(shí)關(guān)系。 臨時(shí)關(guān)系僅用于表間的關(guān)聯(lián),即控制關(guān)聯(lián)表之間的記錄指針的配合移動(dòng)。自由表之間也可用命令實(shí)現(xiàn)關(guān)聯(lián),這些內(nèi)容已在第4章中討論,此處不再贅述。,31,在查詢?cè)O(shè)計(jì)器和視圖設(shè)計(jì)器中自動(dòng)作為默認(rèn)聯(lián)接條件; 在數(shù)據(jù)庫(kù)設(shè)計(jì)器中顯示為聯(lián)系表索引的線; 作為表單和報(bào)表的默認(rèn)關(guān)系在數(shù)據(jù)環(huán)境設(shè)計(jì)器中顯示; 建立參照完整性信息。,永久關(guān)系是存儲(chǔ)在數(shù)據(jù)庫(kù)文件中的數(shù)據(jù)庫(kù)表之間的關(guān)系,在數(shù)據(jù)庫(kù)中,可通過(guò)數(shù)據(jù)庫(kù)所屬的數(shù)據(jù)庫(kù)表的索引建立。永久關(guān)系具有如下特點(diǎn):,在數(shù)據(jù)庫(kù)表中,對(duì)一個(gè)字段可定義主索引 、普通索引、唯一索引或候選索引。在自由表中只能定義后三種索引。,32,主索引:要求相應(yīng)字段的值不重復(fù),即保證唯一性;主索引主要用于建立表間的永久關(guān)系,從而建立參照完整性。一個(gè)數(shù)據(jù)庫(kù)表中只能有一個(gè)主索引。 創(chuàng)建主索引和刪除主索引的命令: ALTER TABLE ADD|DROP PRIMARY KEY TAG ADD用于建立索引,DROP用于刪除索引,TAG后的表示用作主索引的字段名,可選項(xiàng)TAG子句缺省時(shí),表示索引關(guān)鍵字與字段同名。,33,普通索引:普通索引不考慮數(shù)據(jù)字段的值是否有重復(fù)值,只簡(jiǎn)單的把記錄按照一定的順序進(jìn)行排序??勺鳛橐粚?duì)多關(guān)系的“多方”,一個(gè)數(shù)據(jù)庫(kù)表中可有多個(gè)普通索引。可用INDEX命令建立。 建立普通索引和聯(lián)接主索引形成一對(duì)多的永久關(guān)系命令: ALTER TABLE ADD FOREIGN KEY TAG REFERENCES 唯一索引:是為VFP與前面版本兼容設(shè)計(jì)的,可用INDEX命令建立,一個(gè)數(shù)據(jù)庫(kù)表中可有多個(gè)唯一索引。一般情況下不推薦用戶使用。,34,候選索引:要求相應(yīng)字段的值不重復(fù),可作為主關(guān)鍵字,用于在永久關(guān)系中建立參照完整性。一個(gè)數(shù)據(jù)庫(kù)表中可有多個(gè)候選索引。 建立候選索引命令: ALTER TABLE ADD UNIQUE TAG 建立候選索引和聯(lián)接主索引形成一對(duì)一的永久關(guān)系命令: ALTER TABLE ADD|ALTER UNIQUE REFERENCES 其中、是用作候選索引的字段的名字和數(shù)據(jù)類型。,35,5.2.2 用數(shù)據(jù)庫(kù)設(shè)計(jì)器設(shè)計(jì)數(shù)據(jù)庫(kù),用數(shù)據(jù)庫(kù)設(shè)計(jì)器設(shè)計(jì)數(shù)據(jù)庫(kù),需要完成下列步驟。 打開數(shù)據(jù)庫(kù)設(shè)計(jì)器 操作步驟: 單擊VFP下的“文件”菜單; 選定“新建”命令,打開“新建”對(duì)話框; 選擇“數(shù)據(jù)庫(kù)”選項(xiàng); 單擊“新建文件”按鈕,打開“創(chuàng)建”對(duì)話框; 輸入要?jiǎng)?chuàng)建的數(shù)據(jù)庫(kù)名和位置,單擊“保存”按鈕,打開“數(shù)據(jù)庫(kù)設(shè)計(jì)器”窗口。,36,2. 將自由表添加進(jìn)數(shù)據(jù)庫(kù) 可用以下方法進(jìn)行操作。 在數(shù)據(jù)庫(kù)設(shè)計(jì)器窗口,單擊右鍵彈出一快捷菜單,選擇“添加表”命令。 當(dāng)數(shù)據(jù)庫(kù)設(shè)計(jì)器窗口已打開時(shí),VFP會(huì)生成一個(gè)“數(shù)據(jù)庫(kù)”系統(tǒng)菜單;單擊“數(shù)據(jù)庫(kù)”菜單下的“添加表”命令即可。 單擊浮動(dòng)在數(shù)據(jù)庫(kù)設(shè)計(jì)器窗口的“數(shù)據(jù)庫(kù)設(shè)計(jì)器工具欄”上“添加表”按鈕。 3. 建立索引 4. 建立永久關(guān)系(用鼠標(biāo)拖動(dòng)的方法),37,應(yīng)用舉例演示:,按P87 表51 數(shù)據(jù)庫(kù)zgxx中的永久關(guān)系定義創(chuàng)建數(shù)據(jù)庫(kù)zgxx,其中包含RSDA、BMDA、GZ三個(gè)表。,38,5.2.3 數(shù)據(jù)字典,數(shù)據(jù)字典實(shí)際上是一個(gè)名詞概念。它是記錄在數(shù)據(jù)庫(kù)文件中的信息,這些信息包括從屬于數(shù)據(jù)庫(kù)的表的屬性、每個(gè)表的字段屬性、每個(gè)表的記錄規(guī)則、表間關(guān)系和參照完整性(Referential Integrity,簡(jiǎn)稱RI)信息。數(shù)據(jù)字典中的信息可通過(guò)命令、表設(shè)計(jì)器和參照完整性生成器進(jìn)行設(shè)置、顯示或修改。,39,1. 長(zhǎng)表名 長(zhǎng)表名是表的屬性。 長(zhǎng)表名用于對(duì)數(shù)據(jù)庫(kù)表文件名增加適當(dāng)?shù)淖⑨?,讓用戶易于理解表的含義。表文件名還是短名字,是數(shù)據(jù)庫(kù)表或自由表的默認(rèn)表名。用戶還可定義一個(gè)不超過(guò)128個(gè)字符的長(zhǎng)表名代替短表名標(biāo)識(shí)數(shù)據(jù)庫(kù)表。長(zhǎng)表名可包含字母、數(shù)字、下劃線、漢字,但首字符必須是字母、下劃線或漢字,不能使用空格。如果定義了長(zhǎng)表名,當(dāng)表出現(xiàn)在界面(如數(shù)據(jù)庫(kù)設(shè)計(jì)器、查詢?cè)O(shè)計(jì)器、視圖設(shè)計(jì)器、游覽窗口的標(biāo)題欄等)中時(shí),VFP將顯示長(zhǎng)表名。,40,長(zhǎng)表名的創(chuàng)建和修改方法: 用命令 命令格式: CREATE TABLE NAME (2) 用表設(shè)計(jì)器 例如:創(chuàng)建一個(gè)表文件名為“ABC”,長(zhǎng)表文件名為“大學(xué)基礎(chǔ)課程名稱數(shù)據(jù)庫(kù)表”。 命令為: CREATE TABLE ABC NAME ; 大學(xué)基礎(chǔ)課程名稱數(shù)據(jù)表; (課程編號(hào) C(6),課程名稱 C(30) 用表設(shè)計(jì)器演示。,41,2. 記錄規(guī)則 記錄規(guī)則包括記錄有效性和觸發(fā)器兩類。 (1) 記錄有效性 記錄有效性驗(yàn)證,指建立一規(guī)則對(duì)同一記錄中不同字段之間的邏輯關(guān)系進(jìn)行驗(yàn)證。規(guī)則欄指定規(guī)則,信息欄指定出錯(cuò)時(shí)的顯示信息。如圖5.5中。 規(guī)則和信息兩欄的指定均可單擊其右邊按鈕,在彈出的對(duì)話框中輸入信息。 ( 2) 觸發(fā)器 觸發(fā)器包括插入觸發(fā)器、更新觸發(fā)器和刪除觸發(fā)器。指定一規(guī)則,當(dāng)對(duì)數(shù)據(jù)庫(kù)表進(jìn)行插入(包括追加)、更新和刪除時(shí),驗(yàn)證規(guī)則,只有當(dāng)規(guī)則成立時(shí)才能進(jìn)行相應(yīng)操作。規(guī)則可以是一邏輯表達(dá)式。,42,3. 字段的屬性 長(zhǎng)字段名 自由表的字段名最多包含10個(gè)字符,數(shù)據(jù)庫(kù)表的字段名最多包含128個(gè)字符。 (2) 格式 格式文本框用于鍵入格式表達(dá)式,確定當(dāng)前字段(活動(dòng)框批示的字段,圖5.6中顯示的當(dāng)前字段是BMBH))在瀏覽窗口、表單或報(bào)表中顯示時(shí)采用的大小寫、字體大小和樣式。如鍵入一“!”號(hào),能使瀏覽窗口輸入輸出時(shí)將字母轉(zhuǎn)為大寫,若鍵入字母“A”表示僅允許輸入字母。,43,(3) 輸入掩碼 輸入掩碼用于指定當(dāng)前字段的輸入格式,限制輸入數(shù)據(jù)的范圍,提高輸入準(zhǔn)確率??捎玫妮斎胙诖a如下。 X 允許輸入字符 9 允許輸入數(shù)字 # 允許輸入數(shù)字、空格、+、- $ 顯示SET CURRENCY命令指定的貨幣符號(hào) * 在指定寬度中,值左邊顯示* 指出小數(shù)點(diǎn)位置 , 用逗號(hào)分隔小數(shù)點(diǎn)左邊的數(shù)字 輸入掩碼必須按位指定,如設(shè)置99-999,表示相應(yīng)字段只能輸入數(shù)字,可輸入5位數(shù)字,第三個(gè)符號(hào)“-”不是輸入掩碼,照原樣顯示,“-”不用輸入。還可指定其它符號(hào)。,44,(4) 標(biāo)題 數(shù)據(jù)庫(kù)環(huán)境下,若想顯示表中的數(shù)據(jù),可以在表“瀏覽”窗口下進(jìn)行。在進(jìn)行瀏覽時(shí),如果用戶不進(jìn)行字段標(biāo)題的設(shè)置,其表的標(biāo)題顯示的是字段名。由于字段名的最大長(zhǎng)度只有10個(gè)字符長(zhǎng)(自由表,數(shù)據(jù)庫(kù)表字段名長(zhǎng)度可以達(dá)到128個(gè)),有時(shí)難以概括清楚該名下數(shù)據(jù)的屬性;另外,為了程序設(shè)計(jì)的方便,程序設(shè)計(jì)者常常把字段名設(shè)計(jì)成代碼,這也難以概括清楚數(shù)據(jù)的屬性,給數(shù)據(jù)瀏覽帶來(lái)了很多不便。因此,為了在顯示表中數(shù)據(jù)時(shí)瀏覽的清晰、方便,用戶可以自定義字段標(biāo)題。 通過(guò)設(shè)置字段的顯示標(biāo)題可以彌補(bǔ)對(duì)字段長(zhǎng)度的限制。,45,(5) 字段有效性 為了提高表中數(shù)據(jù)輸入的速度和準(zhǔn)確性,除了定義字段的默認(rèn)值外,還可以定義字段有效規(guī)則。 字段的顯示標(biāo)題、注釋、默認(rèn)值、有效規(guī)則的操作方法: 選擇字段單擊數(shù)據(jù)庫(kù)菜單單擊修改打開表設(shè)計(jì)器進(jìn)行相關(guān)操作,46,(6) 設(shè)置表中字段的默認(rèn)值 為了提高表中數(shù)據(jù)輸入的速度和準(zhǔn)確性,可以在向表輸入數(shù)據(jù)前,定義某一字段數(shù)據(jù)的默認(rèn)值。 (7) 設(shè)置表中字段的注釋 為了提高數(shù)據(jù)表的使用效率及它的共享性,可以在建立數(shù)據(jù)表結(jié)構(gòu)時(shí),對(duì)字段加以注釋,提醒自己或其它用戶,清楚地掌握字段的屬性、意義及特殊用途等。 注意:字段標(biāo)題和字段注釋的區(qū)別。,47,48,4. 永久關(guān)系 由前面的知識(shí)我們已知永久關(guān)系是在數(shù)據(jù)庫(kù)中建立的數(shù)據(jù)表之間的關(guān)系,這種關(guān)系能在運(yùn)行結(jié)束后一直保存。具有永久關(guān)系的表必須隸屬于數(shù)據(jù)庫(kù)。 由于永久關(guān)系可以保存,因而用戶不必在每次使用數(shù)據(jù)表的時(shí)候都重新創(chuàng)建關(guān)系。但是永久關(guān)系也不具有臨時(shí)關(guān)系的優(yōu)點(diǎn),即永久關(guān)系不能實(shí)現(xiàn)數(shù)據(jù)記錄指針的互動(dòng)。,49,5. 設(shè)置參照完整性 參照完整性涉及一組表間規(guī)則。對(duì)于具有永久關(guān)系的父、子兩個(gè)數(shù)據(jù)庫(kù)表,當(dāng)對(duì)一個(gè)表更新、刪除或插入一條記錄時(shí),另一個(gè)表并未作相應(yīng)變化,這就破壞了數(shù)據(jù)的完整性。VFP提供一個(gè)RI生成器(即參照完整性生成器)窗口供用戶指出保證數(shù)據(jù)完整性的要求,VFP則根據(jù)用戶要求生成參照完整性規(guī)則以保證數(shù)據(jù)完整性。,50,“參照完整性生成器”可以幫助您建立規(guī)則,控制記錄如何在相關(guān)表中被插入、更新或刪除。 在“參照完整性生成器”窗口,可以設(shè)置記錄的插入、刪除或修改規(guī)則。 在“參照完整性生成器”窗口,有三個(gè)選項(xiàng)卡即:“更新規(guī)則”、“刪除規(guī)則”、“插入規(guī)則”供用戶選擇。,51,當(dāng)選擇“更新規(guī)則”選項(xiàng)卡,可以利用三個(gè)選擇按鈕,設(shè)置關(guān)聯(lián)表間的更新規(guī)則。三個(gè)選擇按鈕的功能如下: 級(jí)聯(lián):用新的關(guān)鍵字值更新子表中的所有相關(guān)記錄; 限制:若子表中有相關(guān)記錄則禁止更新; 忽略:允許更新,不管子表中的相關(guān)記錄。,52,當(dāng)選擇“刪除規(guī)則”選項(xiàng)卡,可以利用三個(gè)選擇按鈕,設(shè)置關(guān)聯(lián)表間的刪除規(guī)則。三個(gè)選擇按鈕的功能如下: 級(jí)聯(lián):刪除子表中的所有相關(guān)記錄; 限制:若子表中有相關(guān)記錄,則禁止刪除; 忽略:允許刪除,不管子表中的相關(guān)記錄。 選擇“插入規(guī)則”選項(xiàng)卡,可以利用二個(gè)選擇按鈕,設(shè)置關(guān)聯(lián)表間的插入規(guī)則。二個(gè)選擇按鈕的功能如下: 限制:若父表中沒有匹配的關(guān)鍵字值,則禁止插入; 忽略:允許插入。 用戶可根據(jù)具體操作的需要,確定以上插入、刪除、更新的操作規(guī)則。,53,演示操作:,建立表間參照完整性 將數(shù)據(jù)庫(kù)文件“zgxx”中的三個(gè)表,設(shè)置記錄的插入、刪除或更新規(guī)則。,54,5.3 在數(shù)據(jù)庫(kù)中查詢數(shù)據(jù),查詢實(shí)際上是利用SELECT-SQL命令或查詢?cè)O(shè)計(jì)器檢索存儲(chǔ)在表或視圖中的信息,然后按照想得到的輸出類型定向查詢結(jié)果,輸出類型可以是瀏覽、報(bào)表或表等。查詢結(jié)果是以擴(kuò)展名為.QPR的文件形式保存。 5.3.1 使用SELECT-SQL命令直接查詢,自學(xué)完成,55,5.3.2 使用查詢?cè)O(shè)計(jì)器查詢,1.用查詢?cè)O(shè)計(jì)器創(chuàng)建查詢 利用查詢?cè)O(shè)計(jì)器創(chuàng)建查詢的操作方法是: (1)打開“文件”菜單,選擇“新建”。 (2)在“新建”窗口,選擇“查詢”,按“新建文件”。 (3)在“打開”窗口,選擇要使用的表,進(jìn)入“添加表或視圖”窗口。 (4)在“查詢?cè)O(shè)計(jì)器”窗口選擇可用字段。 (5)當(dāng)表中可出現(xiàn)在查詢中的字段被選定后,保存查詢結(jié)束操作。,演示操作,利用查詢?cè)O(shè)計(jì)器創(chuàng)建查詢,開始實(shí)驗(yàn),例: 利用查詢?cè)O(shè)計(jì)器創(chuàng)建單表查詢“rcda查詢1“。,例: 利用查詢?cè)O(shè)計(jì)器創(chuàng)建多表查詢“bmbh和rsda查詢1“。,57,2.利用查詢向?qū)?chuàng)建查詢 利用查詢向?qū)?chuàng)建查詢操作方法是: (1)打開“文件”菜單,選擇“新建” (2)在“新建”窗口,選擇“查詢”,再按“向?qū)А保?進(jìn)入“向?qū)нx取”窗口。 (3)在“向?qū)нx取”窗口,選擇“查詢向?qū)А保侔础按_定”按鈕,進(jìn)入“查詢向?qū)А辈襟E窗口。 (4)逐個(gè)選擇出現(xiàn)在查詢中的字段。 (5)添加數(shù)據(jù)表間的關(guān)聯(lián)關(guān)系。 (6)保存查詢。此時(shí),利用查詢向?qū)?chuàng)建查詢操作結(jié)束,演示操作,利用查詢向?qū)?chuàng)建查詢,開始實(shí)驗(yàn),例:利用查詢 向?qū)?chuàng)建單表查詢“rcda查詢2”。,例:利用查詢向?qū)?chuàng)建多表查詢“rsda和bmda查詢2”。,59,3. 使用查詢 使用查詢比使用數(shù)據(jù)表和數(shù)據(jù)庫(kù)更方便、更快捷、更安全。查詢的輸出格式的具有多樣化。使用查詢就是確定查詢結(jié)果的輸出格式。在“查詢?nèi)ハ颉贝翱冢到y(tǒng)提供的七種輸出格式。 瀏覽格式:把查詢結(jié)果送入瀏覽窗口; 臨時(shí)表格式:把查詢結(jié)果存入一個(gè)臨時(shí)的數(shù)據(jù)表中,可以隨意處理這個(gè)臨時(shí)表; 表格式:把查詢結(jié)果存入一個(gè)數(shù)據(jù)表中,可以隨意處理這個(gè)數(shù)據(jù)表,當(dāng)關(guān)閉這個(gè)數(shù)據(jù)表后,查詢結(jié)果仍將存在磁盤上; 圖形格式:把查詢結(jié)果以圖形方式輸出; 屏幕格式:把查詢結(jié)果輸出到屏幕上; 報(bào)表格式:把查詢結(jié)果輸出到報(bào)表中; 標(biāo)簽格式:把查詢結(jié)果輸出到標(biāo)簽中。,60,5.3.3 輸出定向,可以只設(shè)置5.3.2節(jié)六個(gè)選項(xiàng)卡中的幾個(gè),完成所需要的選項(xiàng)卡設(shè)置后,可以單擊VFP的查詢菜單下的查詢?nèi)ハ蛎睿a(chǎn)生如圖5.16所示的輸出定向窗口,用戶可單擊圖中所需要的按鈕,選擇所需要的輸出方式。 退出查詢窗口之前可以保存查詢?cè)O(shè)置,供以后使用這個(gè)設(shè)置。,61,5.4 視圖,VFP視圖是一個(gè)虛擬表,它的數(shù)據(jù)來(lái)源于數(shù)據(jù)表或其它視圖,這些數(shù)據(jù)在數(shù)據(jù)庫(kù)中并不存儲(chǔ),只是在數(shù)據(jù)庫(kù)的數(shù)據(jù)字典中存儲(chǔ)視圖的定義。視圖是從SQL語(yǔ)言移植而來(lái)的,故又稱SQL視圖。視圖一經(jīng)定義,它就成為數(shù)據(jù)庫(kù)的一個(gè)組成部分。在VFP中,可用CREATE SQL VIEW命令創(chuàng)建視圖,也可以用視圖設(shè)計(jì)器創(chuàng)建視圖。創(chuàng)建視圖與創(chuàng)建查詢類似,主要區(qū)別在于視圖可以更新,而查詢不行。視圖分為本地視圖和遠(yuǎn)程視圖,后者數(shù)據(jù)來(lái)源于遠(yuǎn)程數(shù)據(jù)庫(kù)系統(tǒng)。,62,5.4.1 使用命令創(chuàng)建視圖,創(chuàng)建視圖命令格式: CREATE SQL VIEW REMOTE CONNECTION SHARE| AS SELECT-SQL命令,63,例如:創(chuàng)建一個(gè)名為SHTU的視圖。 CREATE SQL VIEW SHITU; AS SELECT DISTINCT; Bmda.BMBH,Bmda.MC,Rsda.BH,Rsda.XM,Rsda.JBGZ,Gz.BT,Gz.KK,; Rsda.JBGZ + Gz.BT - Gz.KK AS 實(shí)發(fā)數(shù); FROM Bmda, Rsda, Gz; WHERE Bmda.BMBH =Rsda.BMBH .and. Rsda.BH=Gz.BH,64,5.4.2 使用視圖設(shè)計(jì)器創(chuàng)建視圖,操作步驟是: (1)打開數(shù)據(jù)庫(kù)文件,進(jìn)入“數(shù)據(jù)庫(kù)設(shè)計(jì)器”窗口。 (2)再打開“數(shù)據(jù)庫(kù)”菜單,選擇“新建本地視圖”。 (3)在“新建本地視圖”窗口,選擇“新建視圖”按鈕,進(jìn)入“視圖設(shè)計(jì)器”窗口,同時(shí)彈出“添加表或視圖”窗口。 ( 窗口中的其他按鈕: 顯示“打開”對(duì)話框,從中可以選擇自由表,并添加到查詢中。) (4)在“添加表或視圖”窗口,把建立視圖所依據(jù)的表添加到視圖設(shè)計(jì)器中,再進(jìn)入“聯(lián)接條件”窗口。 (5)在“聯(lián)接條件”窗口,選擇表間的聯(lián)接條件后,進(jìn)入“視圖設(shè)計(jì)器”窗口。 (6)在“視圖設(shè)計(jì)器”窗口的可用字段列表框中,逐個(gè)單擊可用的字段添加到“選定字段”的列表框中。 (7)當(dāng)表中可出現(xiàn)在視圖中的字段被選定后,保存視圖。并使之被存放在打開的數(shù)據(jù)庫(kù)中,一個(gè)視圖文件建立完成。,演示操作,利用視圖設(shè)計(jì)器創(chuàng)建視圖,開始實(shí)驗(yàn),例: 利用視圖設(shè)計(jì)器,依據(jù)“數(shù)據(jù)1”的數(shù)據(jù)庫(kù),創(chuàng)建一個(gè)單表本地視圖“rcda視圖1”,視圖中包含“bh”、“xm”、“xb”、“jbgz”4個(gè)字段。,例: 利用視圖設(shè)計(jì)器,依據(jù)“數(shù)據(jù)1”的數(shù)據(jù)庫(kù),創(chuàng)建一個(gè)多表本地視圖“rcda 和 bmda 視圖1”,視圖中包含“bh”、“xm”、“bmbh”、“mc”4個(gè)字段。,66,視圖設(shè)計(jì)器中選項(xiàng)卡作用的說(shuō)明 聯(lián)接的含義: 視圖和查詢的一個(gè)數(shù)據(jù)庫(kù)操作,通過(guò)比較指定字段中的值聯(lián)接兩個(gè)或多個(gè)表或視圖中的記錄。例如,表之間的默認(rèn)聯(lián)接是一個(gè)內(nèi)部聯(lián)接,只有當(dāng)聯(lián)接字段中的值相等時(shí),才選擇兩個(gè)表中的記錄。由于 SQL 是基于數(shù)學(xué)中的集合理論,每個(gè)表都可以有一個(gè)圓代表。聯(lián)接條件決定了交叉點(diǎn),代表相匹配記錄的集合。這個(gè)交叉是在兩個(gè)圓內(nèi)部發(fā)生的。一個(gè)外部聯(lián)接不但包含表內(nèi)部的交叉部分中相匹配的記錄,也包含圓的交叉部分左或右外部的記錄。,前進(jìn),67,內(nèi)部聯(lián)接 一種聯(lián)接,只有當(dāng)聯(lián)接字段中的值滿足一定的條件時(shí),才將兩個(gè)表中的記錄組合并添加到查詢結(jié)果中。例如,查詢?cè)O(shè)計(jì)視圖中表之間的默認(rèn)聯(lián)接是內(nèi)部聯(lián)接,并且只有聯(lián)接字段中的值相等時(shí),才從兩個(gè)表中選擇記錄。,68,外部聯(lián)接 一個(gè)查詢中輸入源之間的連接,允許選擇相匹配的記錄,以及不滿足聯(lián)接條件的記錄。使用“左部連接”、“右部連接”或“完全外部連接”,可以從一個(gè)輸入源中選擇所有記錄,或者從其他輸入源中選擇匹配記錄。使用“完全外部連接”,可以不考慮是否匹配,從兩個(gè)輸入源中選擇所有記錄。,返回,69,選項(xiàng)卡選項(xiàng) 字段:指定字段,SUM 或 COUNT 之類的合計(jì)函數(shù),或其它表達(dá)式。 聯(lián)接:指點(diǎn)聯(lián)接表達(dá)式,用它來(lái)匹配多個(gè)表或視圖中的記錄。 篩選:指定選擇記錄的條件,比如在字段內(nèi)指定值或在表之間定義臨時(shí)關(guān)系的連接條件。,70,排序依據(jù) 指定字段,SUM 或 COUNT 之類的合計(jì)函數(shù),或用于把有相同字段值的記錄合并為一組的其它表達(dá)式。 分組依據(jù) 指定字段,SUM 或 COUNT 之類的合計(jì)函數(shù),或用于把有相同字段值的記錄合并為一組的其它表達(dá)式。 更新條件 指定更新視圖的條件(僅適用于“視圖設(shè)計(jì)器”)。 雜項(xiàng) 指定是否要對(duì)重復(fù)記錄進(jìn)行檢索,同時(shí)是否對(duì)記錄(返回記錄的最大數(shù)目或最大百分比)做限制。,71,更新條件:指定條件,將視圖中的修改傳送到視圖所使用的表的原始記錄中。 選項(xiàng)卡選項(xiàng) 表:指定視圖所使用的哪些表可以修改。此列表中所顯示的表都包含了“字段”選項(xiàng)卡“選定字段”列表中的字段。 重置關(guān)鍵字:從每個(gè)表中選擇主關(guān)鍵字字段作為視圖的關(guān)鍵字字段,對(duì)于“字段名”列表中的每個(gè)主關(guān)鍵字字段,在鑰匙符號(hào)下面打一個(gè)“對(duì)號(hào)”。關(guān)鍵字字段可用來(lái)使視圖中的修改與表中的原始記錄相匹配。 全部更新:選擇除了關(guān)鍵字字段以外的所有字段來(lái)進(jìn)行更新,并在“字段名”列表的鉛筆符號(hào)下打一個(gè)“對(duì)號(hào)”。,“更新條件”的有關(guān)解釋,72,發(fā)送 SQL 更新 指定是否將視圖記錄中的修改傳送給原始表。 字段名窗格 顯示所選的、用來(lái)輸出(因此也是可更新的)的字段。 關(guān)鍵字段(使用鑰匙符號(hào)作標(biāo)記) 指定該字段是否為關(guān)鍵字段。 可更新字段(使用鉛筆符號(hào)作標(biāo)記) 指定該字段是否為可更新字段。 字段名 顯示可標(biāo)志為關(guān)鍵字字段或可更新字段的輸出字段名。,73,SQL WHERE 子句包括 控制將哪些字段添加到 WHERE 子句中,這樣,在將視圖修改傳送到原始表時(shí),就可以檢測(cè)服務(wù)器上的更新沖突。 沖突是由視圖中的舊值和原始表的當(dāng)前值之間的比較結(jié)果決定的(OLDVAL( ) 和 CURVAL( ) 之間比較)。如果兩個(gè)值相等,則認(rèn)為原始值未做修改,不存在沖突;如果它們不相等,則存在沖突,數(shù)據(jù)源返回一條錯(cuò)誤信息。 舊值和當(dāng)前值之間的沖突所返回的錯(cuò)誤為“錯(cuò)誤 1585:記錄已被其他人修改”,或者是“錯(cuò)誤 1494:更新沖突。請(qǐng)使用 TABLEUPDATE() 進(jìn)行強(qiáng)制更新或使用 TABLEREVERT() 回滾”。,74,關(guān)鍵字段:如果在原始表中有一個(gè)關(guān)鍵字字段被改變,設(shè)置 WHERE 子句來(lái)檢測(cè)沖突。對(duì)于由另一用戶對(duì)表中原始記錄的其他字段所做修改,不進(jìn)行比較。 關(guān)鍵字和可更新字段:如果另一用戶修改了任何可更新的字段,設(shè)置 WHERE 子句來(lái)檢測(cè)沖突。 關(guān)鍵字和已修改字段:如果從視圖首次檢索(默認(rèn))以后,關(guān)鍵字字段或原始表記錄的已修改字段中,某個(gè)字段做過(guò)修改,設(shè)置 WHERE 子句來(lái)檢測(cè)沖突。 關(guān)鍵字段和時(shí)間戳:如果自原始表記錄的時(shí)間戳首次檢索以后,它被修改過(guò),設(shè)置 WHERE 子句來(lái)檢測(cè)沖突。只有當(dāng)遠(yuǎn)程表有時(shí)間戳列時(shí),此選項(xiàng)才有效。,75,使用更新 指定字段如何在后端服務(wù)器上更新。 SQL DELETE 然后 INSERT 指定刪除原始表記錄,并創(chuàng)建一個(gè)新的在視圖中被修改的記錄。 SQL UPDATE 用視圖字段中的變化來(lái)修改原始表的字段。,76,2利用視圖向?qū)?chuàng)建視圖 操作步驟是: (1)打開數(shù)據(jù)庫(kù)文件,進(jìn)入“數(shù)據(jù)庫(kù)設(shè)計(jì)器”窗口。 (2)打開“數(shù)據(jù)庫(kù)”菜單,選擇“新建本地視圖”,進(jìn)入“新建本地視圖”窗口。 (3)在“新建本地視圖”窗口,選擇“視圖向?qū)А卑粹o,進(jìn)入“本地視圖向?qū)А狈植襟E窗口。 (4)逐個(gè)選擇出現(xiàn)在視圖中的字段。 (5)添加數(shù)據(jù)表間的關(guān)聯(lián)關(guān)系。 (6)保存視圖。此時(shí),利用視圖向?qū)?chuàng)建多表本地視圖操作結(jié)束。,演示操作,利用視圖向?qū)?chuàng)建視圖,開始實(shí)驗(yàn),例:利用視圖向?qū)В罁?jù)“數(shù)據(jù)1”的數(shù)據(jù)庫(kù),創(chuàng)建一個(gè)單表本地視圖“rsda 視圖1”,視圖中包含“bh”、“xm”、“zc”、“jbgz” 4個(gè)字段。,例: 利用視圖向?qū)?,依?jù)“數(shù)據(jù)1”的數(shù)據(jù)庫(kù),創(chuàng)建一個(gè)多表本地視圖“rcda和 gz視圖2”,視圖中包含“bh”、“xm”、“xb”、“jbgz”、“ bt”、“kk”、6個(gè)字段。,78,5.4.3 在視圖中更新數(shù)據(jù),查詢的結(jié)果只能閱讀,不能修改。而視圖不僅有查詢的功能,還可以修改記錄數(shù)據(jù)并使源表隨之更新。視圖設(shè)計(jì)器的更新條件選項(xiàng)卡具有更新數(shù)據(jù)功能。 因?yàn)橐晥D可以限定數(shù)據(jù)表中數(shù)據(jù)的使用范圍,因此,也就限定了可更新數(shù)據(jù),數(shù)據(jù)表中字段的數(shù)據(jù)就不會(huì)被破壞,并提高數(shù)據(jù)維護(hù)的安全性。 利用本地視圖更新數(shù)據(jù)表中的數(shù)據(jù)操作方法是: (1)打開數(shù)據(jù)庫(kù)文件 (2)打開“數(shù)據(jù)庫(kù)”菜單,選擇“修改”。 (3)在“視圖設(shè)計(jì)器”窗口,選擇“更新條件”選項(xiàng)卡,選擇要更新數(shù)據(jù)的字段名;當(dāng)要更新數(shù)據(jù)的字段名確定后,結(jié)束更新條件的設(shè)置。,演示操作,利用視圖更新源表中數(shù)據(jù),開始實(shí)驗(yàn),例:在已創(chuàng)建的視圖2中,修改視圖中王強(qiáng)的“xb”的值為“女”,觀察相應(yīng)源表是否隨之變化。,80,實(shí)驗(yàn)內(nèi)容,1利用P100 習(xí)題(3)創(chuàng)建的數(shù)據(jù)庫(kù)資源,創(chuàng)建多個(gè)不同的視圖及查詢文件。 2利用已有的查詢文件設(shè)計(jì)不同的查詢?nèi)ハ蛭募?3.將P100101 習(xí)題中的內(nèi)容上機(jī)操作。,81,2.4 VFP 6.0 工程項(xiàng)目 本 節(jié) 要 點(diǎn),創(chuàng)建項(xiàng)目 項(xiàng)目管理器的使用 定制項(xiàng)目管理器,82,項(xiàng)目: 一種文件,用于跟蹤創(chuàng)建應(yīng)用程序所需要的所有程序、表單、菜單、庫(kù)、報(bào)表、標(biāo)簽、查詢和一些其他類型的文件。項(xiàng)目用“項(xiàng)目管理器”進(jìn)行維護(hù),具有 .pjx 擴(kuò)展名。即項(xiàng)目是文件、數(shù)據(jù)、文檔和 Visual FoxPro 對(duì)象的集合?!绊?xiàng)目管理器”是 Visual FoxPro 的“控制中心”。,項(xiàng)目管理器,83,建立項(xiàng)目文件,“項(xiàng)目管理器”主要是用來(lái)組織和管理Visual FoxPro 中不同類型的文件。只
溫馨提示
- 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 呂梁學(xué)院《文化產(chǎn)業(yè)經(jīng)濟(jì)學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 廈門理工學(xué)院《軟件架構(gòu)設(shè)計(jì)》2023-2024學(xué)年第二學(xué)期期末試卷
- 寧德師范學(xué)院《信號(hào)與系統(tǒng)分析》2023-2024學(xué)年第二學(xué)期期末試卷
- 山東省菏澤鄆城縣聯(lián)考2025年初三全真語(yǔ)文試題模擬試卷(7)含解析
- 山西省運(yùn)城市運(yùn)康中學(xué)2025年初三下學(xué)期期末考試語(yǔ)文試題理試題(B卷)含解析
- 綠色建筑給排水系統(tǒng)設(shè)計(jì)與施工一體化協(xié)議
- ??漆t(yī)院醫(yī)生多點(diǎn)執(zhí)業(yè)業(yè)務(wù)協(xié)作合同
- 美團(tuán)閃購(gòu)產(chǎn)品代運(yùn)營(yíng)與數(shù)據(jù)分析合同
- 學(xué)術(shù)成果出版誠(chéng)信審查合同
- 國(guó)際技術(shù)轉(zhuǎn)移項(xiàng)目外籍專家引進(jìn)協(xié)議
- GB/T 20041.21-2008電纜管理用導(dǎo)管系統(tǒng)第21部分:剛性導(dǎo)管系統(tǒng)的特殊要求
- GB/T 14054-1993輻射防護(hù)用固定式X、γ輻射劑量率儀、報(bào)警裝置和監(jiān)測(cè)儀
- 辦公室5S管理標(biāo)準(zhǔn)(圖片版)課件
- 《馬克思主義發(fā)展史》第六章 毛澤東思想是馬克思主義在中國(guó)發(fā)展的第一個(gè)重大成果
- 粵教版地理七年級(jí)下冊(cè)全冊(cè)課件
- 工商企業(yè)管理專業(yè)模擬實(shí)訓(xùn)報(bào)告
- 八年級(jí)英語(yǔ)15篇完形填空(附答案)
- 《馬克思主義與社會(huì)科學(xué)方法論》課件第四講 社會(huì)矛盾研究方法
- 會(huì)寶嶺選礦廠集中控制技術(shù)方案
- 第13講巧解弦圖與面積
- 畢業(yè)設(shè)計(jì)(論文)-CK6150總體及縱向進(jìn)給和尾座部件的設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論