




已閱讀5頁(yè),還剩18頁(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ù)和表,創(chuàng)建、維護(hù)和管理數(shù)據(jù)庫(kù),要點(diǎn),建立數(shù)據(jù)庫(kù) 數(shù)據(jù)庫(kù)的基本操作 數(shù)據(jù)詞典,一、建立數(shù)據(jù)庫(kù),可以使用項(xiàng)目管理器或create database命令等方法建立數(shù)據(jù)庫(kù)。在開發(fā)環(huán)境下通常使用項(xiàng)目管理器建立數(shù)據(jù)庫(kù),在程序運(yùn)行時(shí)刻通常以命令方式建立數(shù)據(jù)庫(kù)。 Create database命令語(yǔ)法格式,Create database databaseName|?,二、數(shù)據(jù)庫(kù)的基本操作,數(shù)據(jù)庫(kù)的基本操作包括: 打開數(shù)據(jù)庫(kù); 向數(shù)據(jù)庫(kù)中添加表; 獲取數(shù)據(jù)庫(kù)中的表信息; 從數(shù)據(jù)庫(kù)中移去表; 刪除數(shù)據(jù)庫(kù)中的表; 多數(shù)據(jù)庫(kù)操作; 關(guān)閉數(shù)據(jù)庫(kù)等,二、數(shù)據(jù)庫(kù)的基本操作,打開數(shù)據(jù)庫(kù) 剛創(chuàng)建的數(shù)據(jù)庫(kù)會(huì)自動(dòng)保持打開狀態(tài),而對(duì)于已經(jīng)存在的數(shù)據(jù)庫(kù),使用前必須首先打開數(shù)據(jù)庫(kù) 使用交互模式打開數(shù)據(jù)庫(kù) 使用open database命令打開數(shù)據(jù)庫(kù),Open database fileName | ? exclusive | shared noupdate,二、數(shù)據(jù)庫(kù)的基本操作,檢查數(shù)據(jù)庫(kù)的打開狀態(tài) Dbc()函數(shù)返回當(dāng)前打開數(shù)據(jù)庫(kù)的名稱和路徑,如果沒有打開的數(shù)據(jù)庫(kù),該函數(shù)返回空值 可使用dbused()函數(shù)來(lái)檢測(cè)數(shù)據(jù)庫(kù)的打開狀態(tài) Adatabase()函數(shù)可以把所有打開的數(shù)據(jù)庫(kù)的名稱和路徑保存到內(nèi)存變量數(shù)組中,同時(shí)返回打開數(shù)據(jù)庫(kù)的數(shù)目,如果沒有打開的數(shù)據(jù)庫(kù),返回0.,二、數(shù)據(jù)庫(kù)的基本操作,向數(shù)據(jù)庫(kù)中添加表 在打開數(shù)據(jù)庫(kù)設(shè)計(jì)器的情況下,可以通過交互模式向數(shù)據(jù)庫(kù)添加一個(gè)已存在的自由表。此外,可以使用add table命令向當(dāng)前數(shù)據(jù)庫(kù)添加。 語(yǔ)法格式: Add table tableName | ? name longtablename 要注意的是,被添加的表必須為自由表,且數(shù)據(jù)庫(kù)必須以獨(dú)占方式打開,二、數(shù)據(jù)庫(kù)的基本操作,獲取數(shù)據(jù)庫(kù)中的表信息 使用display tables命令顯示表信息 Display tables to printer prompt | to file filename 使用adbobjects()函數(shù)將表信息保存到數(shù)組中 Adbobjects(ArrayName,cSetting) 使用indbc()函數(shù)指定的數(shù)據(jù)庫(kù)對(duì)象是否已經(jīng)存在于當(dāng)前數(shù)據(jù)庫(kù)中 Indbc(cDatabaseName,cSetting),二、數(shù)據(jù)庫(kù)的基本操作,從數(shù)據(jù)庫(kù)中移去表 交互模式從數(shù)據(jù)庫(kù)中移去表 使用命令從數(shù)據(jù)庫(kù)中移去表 Remove table TableName | ? deleted 重命名數(shù)據(jù)庫(kù)中的表 可以使用交互模式和命令模式 命令語(yǔ)法格式 Rename table tableName1 to tableName2,二、數(shù)據(jù)庫(kù)的基本操作,從數(shù)據(jù)庫(kù)中刪除表 可以使用交互模式和命令模式 命令語(yǔ)法格式 Drop table TableName | fileName | ? recylce 交互模式修改數(shù)據(jù)庫(kù) 可以使用modify database 命令打開數(shù)據(jù)庫(kù)設(shè)計(jì)器,進(jìn)行交互式的修改。 Modify database DatabaseName | ? nowait noedit,二、數(shù)據(jù)庫(kù)的基本操作,多數(shù)據(jù)庫(kù)操作 Foxpro同時(shí)可以打開多個(gè)數(shù)據(jù)庫(kù)。但只有一個(gè)數(shù)據(jù)庫(kù)可以成為當(dāng)前數(shù)據(jù)庫(kù)??梢允褂妹钪付ó?dāng)前數(shù)據(jù)庫(kù) Set database to databaseName 要獲得當(dāng)前數(shù)據(jù)庫(kù)的名稱,使用dbc()函數(shù) 關(guān)閉數(shù)據(jù)庫(kù) Close databases all 刪除數(shù)據(jù)庫(kù) Delete database databaseName | ? deleteTables,三、數(shù)據(jù)詞典,所謂數(shù)據(jù)詞典是包含數(shù)據(jù)庫(kù)中所有表信息的一個(gè)表。用于存儲(chǔ)表的長(zhǎng)表名或長(zhǎng)字段名、有效性規(guī)則和觸發(fā)器,以及有關(guān)數(shù)據(jù)庫(kù)對(duì)象的定義(如視圖和命名連接) 數(shù)據(jù)詞典使數(shù)據(jù)庫(kù)的設(shè)計(jì)和修改更加靈活。使用數(shù)據(jù)詞典,可以設(shè)置字段級(jí)和記錄級(jí)的有效性檢查,保證主關(guān)鍵字字段內(nèi)容的唯一性。如果不用數(shù)據(jù)詞典,這些功能就必須靠自己編程實(shí)現(xiàn)。,三、數(shù)據(jù)詞典,數(shù)據(jù)詞典可創(chuàng)建和指定的項(xiàng)目包括: 建立表的主關(guān)鍵字和候選索引關(guān)鍵字 為表和字段指定長(zhǎng)名稱 為每個(gè)字段和表添加注釋 為表的各字段指定標(biāo)題,這些標(biāo)題作為表頭顯示在browse窗口或grid列中 為字段指定默認(rèn)值 設(shè)置字段的輸入掩碼和顯示格式 設(shè)置字段級(jí)規(guī)則和記錄級(jí)規(guī)則 為表設(shè)置觸發(fā)器 建立存儲(chǔ)過程 建立數(shù)據(jù)庫(kù)表間的永久關(guān)系 建立到遠(yuǎn)程數(shù)據(jù)源的連接 建立本地視圖和遠(yuǎn)程視圖,三、數(shù)據(jù)詞典,設(shè)置長(zhǎng)表名和表注釋 為了更清楚地描述表的含義,可以為數(shù)據(jù)庫(kù)表設(shè)置長(zhǎng)表名和表注釋 可以通過create table命令的name子句設(shè)置長(zhǎng)表名。 可以使用dbsetprop()函數(shù)設(shè)置表注釋。 Dbsetprop(cName,cType,cProperty,cPropertyValue) Cname必須是長(zhǎng)表名;cType是CONNECTION、DATABASE、FIELD、TABLE、VIEW之一。,三、數(shù)據(jù)詞典,設(shè)置長(zhǎng)字段名 數(shù)據(jù)庫(kù)表允許字段名稱最多為128位字符,而自由表最多只能為10個(gè)字符。如將表從數(shù)據(jù)庫(kù)中移去,長(zhǎng)字段名將被截取為10個(gè)字符。 字段的輸入輸出格式 可以通過格式和輸入掩碼控制向字段中輸入的值,以及字段的顯式格式。 格式設(shè)置決定整個(gè)字段的輸入方式;輸入掩碼可以控制每個(gè)字符的輸入方式。 ? Dbsetprop(“學(xué)生檔案表.聯(lián)系電話“,”FIELD“,”InputMask”,”999-99999999”),三、數(shù)據(jù)詞典,設(shè)置字段標(biāo)題 可以為每個(gè)字段設(shè)置一個(gè)標(biāo)題,在編輯窗口或grid控件中顯示字段時(shí),使用該標(biāo)題作為列標(biāo)題。 Dbsetprop(“testtb.聯(lián)系電話”,”FIELD”,”caption”,”telephone”) 設(shè)置字段注釋 添加字段注釋可以使用戶更容易理解字段的用途 Dbsetprop(“testtb.聯(lián)系電話”,”FIELD”,”comment”,”該字段用于保存學(xué)生的聯(lián)系電話”),三、數(shù)據(jù)詞典,設(shè)置字段級(jí)有效性規(guī)則 可以使用字段級(jí)有效性規(guī)則控制用戶輸入到字段中的信息類型或檢查其他字段值的字段數(shù)據(jù)。 使用表設(shè)計(jì)器設(shè)置 使用命令設(shè)置 使用create table命令的check子句或alter table的set check子句設(shè)置字段級(jí)規(guī)則 alter table 學(xué)生檔案表 alter column maths set check maths=0.and.maths=100 error “請(qǐng)輸入0-100間的值“,三、數(shù)據(jù)詞典,設(shè)置記錄級(jí)有效性規(guī)則 使用記錄級(jí)有效性規(guī)則,可以控制用戶輸入到記錄中的信息類型。 使用表設(shè)計(jì)器設(shè)置記錄級(jí)有效性規(guī)則 使用命令設(shè)置記錄級(jí)有效性規(guī)則 使用可以使用create table的check和alter table的set check子句來(lái)設(shè)置記錄級(jí)有效性規(guī)則 alter table 學(xué)生檔案表 set check total=chinese+maths error “成績(jī)合計(jì)不正確“,三、數(shù)據(jù)詞典,存儲(chǔ)過程 存儲(chǔ)過程是保存在數(shù)據(jù)庫(kù)中的專門進(jìn)行數(shù)據(jù)庫(kù)操作的代碼過程。 其通常與觸發(fā)器結(jié)合使用,來(lái)控制數(shù)據(jù)的完整性。 打開數(shù)據(jù)庫(kù)時(shí),存儲(chǔ)過程被自動(dòng)加載到內(nèi)存中,可以和其他過程文件一樣進(jìn)行調(diào)用 在打開數(shù)據(jù)庫(kù)的情況下,執(zhí)行modify procedure命令可以打開存儲(chǔ)過程文本編輯器 可以使用display procedure命令顯示當(dāng)前數(shù)據(jù)庫(kù)中的存儲(chǔ)過程名稱。,三、數(shù)據(jù)詞典,設(shè)置觸發(fā)器 觸發(fā)器是綁定在表上的表達(dá)式,當(dāng)表中的任何記錄被指定的操作命令修改時(shí),觸發(fā)器被激發(fā)。 觸發(fā)器作為特定表的屬性被創(chuàng)建和存儲(chǔ)。 觸發(fā)器必須返回.t.或.f.,并且必須返回.t.時(shí),操作才能繼續(xù)進(jìn)行 可以使用表設(shè)計(jì)器和create trigger命令創(chuàng)建觸發(fā)器。 一張表最多只能有3個(gè)觸發(fā)器。 結(jié)合存儲(chǔ)過程的觸發(fā)器示例(見備注),三、數(shù)據(jù)詞典,建立和刪除表間關(guān)系 建立表間永久關(guān)系 設(shè)計(jì)器方式和命令方式 使用帶foreign key子句的create table或alter table命令建立永久關(guān)系 刪除表間永久關(guān)系 設(shè)計(jì)器方式和命令方式 使用帶drop foreign key 子句的alter table命令刪除表間的永久關(guān)系,三、數(shù)據(jù)詞典,建立表間臨時(shí)關(guān)系 使用set relation建立臨時(shí)關(guān)系。建立前,必須打開一個(gè)表(父表),而且還必須在另一個(gè)工作區(qū)打開其他表(子表)。相關(guān)的表通常有一個(gè)相同的字段,且子表必須建立索引。 語(yǔ)句示例: set ralation to id into 表2 在建立一對(duì)一關(guān)系基礎(chǔ)上可使用set skip to語(yǔ)句建立一對(duì)多關(guān)系。 不帶參數(shù)的set relation to 和set skip to可以刪除一對(duì)一關(guān)系和一對(duì)多關(guān)系,三、數(shù)據(jù)詞
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 班級(jí)班委會(huì)的建設(shè)與培養(yǎng)計(jì)劃
- 企業(yè)安全文化建設(shè)與保安工作關(guān)系計(jì)劃
- 工作計(jì)劃與目標(biāo)達(dá)成的關(guān)系
- 生物催化過程優(yōu)化與控制的原則
- 2025年內(nèi)螺紋銅管項(xiàng)目合作計(jì)劃書
- 餐飲行業(yè)供應(yīng)鏈優(yōu)化解決方案協(xié)議
- Soyasaponin-Aa-Standard-生命科學(xué)試劑-MCE
- 2-Hydroxy-atrazine-Standard-生命科學(xué)試劑-MCE
- 私人醫(yī)生健康管理服務(wù)合同
- 小學(xué)高年級(jí)語(yǔ)文寫作技巧征文
- 白酒加工小作坊整治工作方案
- 成人住院患者靜脈血栓栓塞癥預(yù)防護(hù)理
- 四年級(jí)數(shù)學(xué)(四則混合運(yùn)算)計(jì)算題專項(xiàng)練習(xí)與答案匯編
- 國(guó)家基本公共衛(wèi)生服務(wù)項(xiàng)目績(jī)效考核課件
- 孕產(chǎn)婦深靜脈血栓預(yù)防與護(hù)理課件
- 研發(fā)運(yùn)營(yíng)一體化DevOps能力成熟度模型評(píng)估(完整版)
- 班級(jí)管理課件:班級(jí)組織的建設(shè)
- 《3-6歲兒童學(xué)習(xí)與發(fā)展指南》健康領(lǐng)域內(nèi)容目標(biāo)與指導(dǎo)
- 《共圓中國(guó)夢(mèng)》示范課教學(xué)設(shè)計(jì)【部編人教版九年級(jí)道德與法治上冊(cè)】
- GB/T 10739-2023紙、紙板和紙漿試樣處理和試驗(yàn)的標(biāo)準(zhǔn)大氣條件
- 《云臺(tái)山地質(zhì)公園》課件
評(píng)論
0/150
提交評(píng)論