




已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第三章 數(shù)據(jù)庫和表,創(chuàng)建、維護和管理數(shù)據(jù)庫,要點,建立數(shù)據(jù)庫 數(shù)據(jù)庫的基本操作 數(shù)據(jù)詞典,一、建立數(shù)據(jù)庫,可以使用項目管理器或create database命令等方法建立數(shù)據(jù)庫。在開發(fā)環(huán)境下通常使用項目管理器建立數(shù)據(jù)庫,在程序運行時刻通常以命令方式建立數(shù)據(jù)庫。 Create database命令語法格式,Create database databaseName|?,二、數(shù)據(jù)庫的基本操作,數(shù)據(jù)庫的基本操作包括: 打開數(shù)據(jù)庫; 向數(shù)據(jù)庫中添加表; 獲取數(shù)據(jù)庫中的表信息; 從數(shù)據(jù)庫中移去表; 刪除數(shù)據(jù)庫中的表; 多數(shù)據(jù)庫操作; 關(guān)閉數(shù)據(jù)庫等,二、數(shù)據(jù)庫的基本操作,打開數(shù)據(jù)庫 剛創(chuàng)建的數(shù)據(jù)庫會自動保持打開狀態(tài),而對于已經(jīng)存在的數(shù)據(jù)庫,使用前必須首先打開數(shù)據(jù)庫 使用交互模式打開數(shù)據(jù)庫 使用open database命令打開數(shù)據(jù)庫,Open database fileName | ? exclusive | shared noupdate,二、數(shù)據(jù)庫的基本操作,檢查數(shù)據(jù)庫的打開狀態(tài) Dbc()函數(shù)返回當前打開數(shù)據(jù)庫的名稱和路徑,如果沒有打開的數(shù)據(jù)庫,該函數(shù)返回空值 可使用dbused()函數(shù)來檢測數(shù)據(jù)庫的打開狀態(tài) Adatabase()函數(shù)可以把所有打開的數(shù)據(jù)庫的名稱和路徑保存到內(nèi)存變量數(shù)組中,同時返回打開數(shù)據(jù)庫的數(shù)目,如果沒有打開的數(shù)據(jù)庫,返回0.,二、數(shù)據(jù)庫的基本操作,向數(shù)據(jù)庫中添加表 在打開數(shù)據(jù)庫設(shè)計器的情況下,可以通過交互模式向數(shù)據(jù)庫添加一個已存在的自由表。此外,可以使用add table命令向當前數(shù)據(jù)庫添加。 語法格式: Add table tableName | ? name longtablename 要注意的是,被添加的表必須為自由表,且數(shù)據(jù)庫必須以獨占方式打開,二、數(shù)據(jù)庫的基本操作,獲取數(shù)據(jù)庫中的表信息 使用display tables命令顯示表信息 Display tables to printer prompt | to file filename 使用adbobjects()函數(shù)將表信息保存到數(shù)組中 Adbobjects(ArrayName,cSetting) 使用indbc()函數(shù)指定的數(shù)據(jù)庫對象是否已經(jīng)存在于當前數(shù)據(jù)庫中 Indbc(cDatabaseName,cSetting),二、數(shù)據(jù)庫的基本操作,從數(shù)據(jù)庫中移去表 交互模式從數(shù)據(jù)庫中移去表 使用命令從數(shù)據(jù)庫中移去表 Remove table TableName | ? deleted 重命名數(shù)據(jù)庫中的表 可以使用交互模式和命令模式 命令語法格式 Rename table tableName1 to tableName2,二、數(shù)據(jù)庫的基本操作,從數(shù)據(jù)庫中刪除表 可以使用交互模式和命令模式 命令語法格式 Drop table TableName | fileName | ? recylce 交互模式修改數(shù)據(jù)庫 可以使用modify database 命令打開數(shù)據(jù)庫設(shè)計器,進行交互式的修改。 Modify database DatabaseName | ? nowait noedit,二、數(shù)據(jù)庫的基本操作,多數(shù)據(jù)庫操作 Foxpro同時可以打開多個數(shù)據(jù)庫。但只有一個數(shù)據(jù)庫可以成為當前數(shù)據(jù)庫??梢允褂妹钪付ó斍皵?shù)據(jù)庫 Set database to databaseName 要獲得當前數(shù)據(jù)庫的名稱,使用dbc()函數(shù) 關(guān)閉數(shù)據(jù)庫 Close databases all 刪除數(shù)據(jù)庫 Delete database databaseName | ? deleteTables,三、數(shù)據(jù)詞典,所謂數(shù)據(jù)詞典是包含數(shù)據(jù)庫中所有表信息的一個表。用于存儲表的長表名或長字段名、有效性規(guī)則和觸發(fā)器,以及有關(guān)數(shù)據(jù)庫對象的定義(如視圖和命名連接) 數(shù)據(jù)詞典使數(shù)據(jù)庫的設(shè)計和修改更加靈活。使用數(shù)據(jù)詞典,可以設(shè)置字段級和記錄級的有效性檢查,保證主關(guān)鍵字字段內(nèi)容的唯一性。如果不用數(shù)據(jù)詞典,這些功能就必須靠自己編程實現(xiàn)。,三、數(shù)據(jù)詞典,數(shù)據(jù)詞典可創(chuàng)建和指定的項目包括: 建立表的主關(guān)鍵字和候選索引關(guān)鍵字 為表和字段指定長名稱 為每個字段和表添加注釋 為表的各字段指定標題,這些標題作為表頭顯示在browse窗口或grid列中 為字段指定默認值 設(shè)置字段的輸入掩碼和顯示格式 設(shè)置字段級規(guī)則和記錄級規(guī)則 為表設(shè)置觸發(fā)器 建立存儲過程 建立數(shù)據(jù)庫表間的永久關(guān)系 建立到遠程數(shù)據(jù)源的連接 建立本地視圖和遠程視圖,三、數(shù)據(jù)詞典,設(shè)置長表名和表注釋 為了更清楚地描述表的含義,可以為數(shù)據(jù)庫表設(shè)置長表名和表注釋 可以通過create table命令的name子句設(shè)置長表名。 可以使用dbsetprop()函數(shù)設(shè)置表注釋。 Dbsetprop(cName,cType,cProperty,cPropertyValue) Cname必須是長表名;cType是CONNECTION、DATABASE、FIELD、TABLE、VIEW之一。,三、數(shù)據(jù)詞典,設(shè)置長字段名 數(shù)據(jù)庫表允許字段名稱最多為128位字符,而自由表最多只能為10個字符。如將表從數(shù)據(jù)庫中移去,長字段名將被截取為10個字符。 字段的輸入輸出格式 可以通過格式和輸入掩碼控制向字段中輸入的值,以及字段的顯式格式。 格式設(shè)置決定整個字段的輸入方式;輸入掩碼可以控制每個字符的輸入方式。 ? Dbsetprop(“學(xué)生檔案表.聯(lián)系電話“,”FIELD“,”InputMask”,”999-99999999”),三、數(shù)據(jù)詞典,設(shè)置字段標題 可以為每個字段設(shè)置一個標題,在編輯窗口或grid控件中顯示字段時,使用該標題作為列標題。 Dbsetprop(“testtb.聯(lián)系電話”,”FIELD”,”caption”,”telephone”) 設(shè)置字段注釋 添加字段注釋可以使用戶更容易理解字段的用途 Dbsetprop(“testtb.聯(lián)系電話”,”FIELD”,”comment”,”該字段用于保存學(xué)生的聯(lián)系電話”),三、數(shù)據(jù)詞典,設(shè)置字段級有效性規(guī)則 可以使用字段級有效性規(guī)則控制用戶輸入到字段中的信息類型或檢查其他字段值的字段數(shù)據(jù)。 使用表設(shè)計器設(shè)置 使用命令設(shè)置 使用create table命令的check子句或alter table的set check子句設(shè)置字段級規(guī)則 alter table 學(xué)生檔案表 alter column maths set check maths=0.and.maths=100 error “請輸入0-100間的值“,三、數(shù)據(jù)詞典,設(shè)置記錄級有效性規(guī)則 使用記錄級有效性規(guī)則,可以控制用戶輸入到記錄中的信息類型。 使用表設(shè)計器設(shè)置記錄級有效性規(guī)則 使用命令設(shè)置記錄級有效性規(guī)則 使用可以使用create table的check和alter table的set check子句來設(shè)置記錄級有效性規(guī)則 alter table 學(xué)生檔案表 set check total=chinese+maths error “成績合計不正確“,三、數(shù)據(jù)詞典,存儲過程 存儲過程是保存在數(shù)據(jù)庫中的專門進行數(shù)據(jù)庫操作的代碼過程。 其通常與觸發(fā)器結(jié)合使用,來控制數(shù)據(jù)的完整性。 打開數(shù)據(jù)庫時,存儲過程被自動加載到內(nèi)存中,可以和其他過程文件一樣進行調(diào)用 在打開數(shù)據(jù)庫的情況下,執(zhí)行modify procedure命令可以打開存儲過程文本編輯器 可以使用display procedure命令顯示當前數(shù)據(jù)庫中的存儲過程名稱。,三、數(shù)據(jù)詞典,設(shè)置觸發(fā)器 觸發(fā)器是綁定在表上的表達式,當表中的任何記錄被指定的操作命令修改時,觸發(fā)器被激發(fā)。 觸發(fā)器作為特定表的屬性被創(chuàng)建和存儲。 觸發(fā)器必須返回.t.或.f.,并且必須返回.t.時,操作才能繼續(xù)進行 可以使用表設(shè)計器和create trigger命令創(chuàng)建觸發(fā)器。 一張表最多只能有3個觸發(fā)器。 結(jié)合存儲過程的觸發(fā)器示例(見備注),三、數(shù)據(jù)詞典,建立和刪除表間關(guān)系 建立表間永久關(guān)系 設(shè)計器方式和命令方式 使用帶foreign key子句的create table或alter table命令建立永久關(guān)系 刪除表間永久關(guān)系 設(shè)計器方式和命令方式 使用帶drop foreign key 子句的alter table命令刪除表間的永久關(guān)系,三、數(shù)據(jù)詞典,建立表間臨時關(guān)系 使用set relation建立臨時關(guān)系。建立前,必須打開一個表(父表),而且還必須在另一個工作區(qū)打開其他表(子表)。相關(guān)的表通常有一個相同的字段,且子表必須建立索引。 語句示例: set ralation to id into 表2 在建立一對一關(guān)系基礎(chǔ)上可使用set skip to語句建立一對多關(guān)系。 不帶參數(shù)的set relation to 和set skip to可以刪除一對一關(guān)系和一對多關(guān)系,三、數(shù)據(jù)詞
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 云南美術(shù)色彩試題及答案
- 江寧面試題目及答案
- 廣告設(shè)計機器學(xué)習(xí)應(yīng)用的實踐探討試題及答案
- 福建學(xué)士學(xué)位試題及答案
- 《陶瓷釉料的制備》課件
- 助理廣告師備考心得體會試題及答案
- 生活垃圾焚燒處理廠建設(shè)初步方案設(shè)計
- 電廠職業(yè)病試題及答案
- 保安考試題目及答案
- 商業(yè)美術(shù)設(shè)計師考試研究試題及答案
- 健康評估試題庫
- 被執(zhí)行人財產(chǎn)申報表
- 吊裝安全確認表及技術(shù)交底
- DBJ41∕T 228-2019 河南省房屋建筑施工現(xiàn)場安全資料管理標準
- 三級安全教育考試試題(的)
- DB13 5325-2021 生活垃圾焚燒大氣污染控制標準
- 芒針療法課件
- 鼓樂鏗鏘課件 (2)
- 小學(xué)二年級下冊科學(xué)課件1.《春夏秋冬》大象版(22張)ppt課件
- 鋼結(jié)構(gòu)工程質(zhì)量通病防治圖冊
- 地下水八大離子-陰陽離子平衡計算公式
評論
0/150
提交評論