版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第12章 網(wǎng)絡(luò)程序設(shè)計(jì)技術(shù)(1學(xué)時(shí)),吉林大學(xué)計(jì)算機(jī)教學(xué)與研究中心 ,Welcome !,第12章 網(wǎng)絡(luò)程序設(shè)計(jì)技術(shù),網(wǎng)絡(luò)應(yīng)用程序的主要特點(diǎn) :多個(gè)程序并行執(zhí)行,多個(gè)用戶同時(shí)訪問數(shù)據(jù)庫。,網(wǎng)絡(luò)程序要解決的關(guān)鍵問題:數(shù)據(jù)共享與數(shù)據(jù)訪問沖突。,VFP網(wǎng)絡(luò)編程機(jī)制:文件共享和數(shù)據(jù)加鎖。,文件打開方式:是否允許修改文件以只讀方式打開;是否允許多個(gè)用戶同時(shí)訪問文件以獨(dú)占方式打開。,12.1.1 文件的只讀與可修改,以只讀方式打開的文件類型:數(shù)據(jù)庫文件(DBC)、表文件(DBF)、文本文件(TXT)和程序文件(PRG、QPR、MPR),. 通過菜單設(shè)置只讀打開方式:文件菜單打開;在打開對(duì)話框中選擇文件類型
2、文件名;選定以只讀方式打開,單擊確定按鈕。,12.1.1 文件的只讀與可修改,通過命令設(shè)置只讀打開方式:,(1)打開數(shù)據(jù)庫文件: Open DataBase NoUpdate Modify database NoEdit (2)打開表文件: Use NoUpdate (3)打開文本文件: Modify File NoModify (4)打開程序文件: Modify Command NoModify ,12.1.1 文件的只讀與可修改,4以只讀方式打開文件的目的:限制修改文件中的內(nèi)容。 特殊性:以只讀方式打開據(jù)庫,而以可修改方式打開其中的表,則執(zhí)行MODIFY DATABASE NOEDIT,在
3、數(shù)據(jù)庫設(shè)計(jì)器中不能修改表結(jié)構(gòu)及其相關(guān)信息 ,可修改表中的數(shù)據(jù)記錄。,12.1.2 文件的獨(dú)占與共享,共享打開方式 :用戶打開文件后,允許其他用戶以同種方式打開該文件 。,獨(dú)占打開方式 :用戶打開文件后,其他用戶無法以任何方式打開該文件 。,通過菜單設(shè)置獨(dú)占共享:文件菜單打開;在打開對(duì)話框中選擇文件類型文件名;選定獨(dú)占,單擊確定按鈕。,12.1.2 文件的獨(dú)占與共享,以獨(dú)占方式打開文件的目的:某些VFP命令要求獨(dú)占文件;禁止網(wǎng)絡(luò)中其他用戶訪問文件。,設(shè)置獨(dú)占或共享打開 的文件類型:數(shù)據(jù)庫文件(DBC)和表文件(DBF)。,12.1.2 文件的獨(dú)占與共享,2. 數(shù)據(jù)庫的獨(dú)占與共享 Open Dat
4、aBase Exclusive| Shared Exclusive 獨(dú)占,Shared 共享。,3. 表的獨(dú)占與共享 Use Exclusive | Shared Exclusive 獨(dú)占,Shared 共享。舉例,1. 設(shè)置文件的打開方式 Set Exclusive On | Off On(系統(tǒng)默認(rèn))獨(dú)占,Off 共享,12.1.2 文件的獨(dú)占與共享,5. 其他文件的獨(dú)占與共享 (1)與表相關(guān)的文件:FPT、IDX和CDX,打開方式與表一致。 (2)與程序有關(guān)的文件:PRG、SCX、MNX、MPR和QPR,用Modify命令為獨(dú)占;用DO命令為共享。舉例,4. SQL語句的打開表方式 與Se
5、t Exclusive狀態(tài)一致,12.1.3 要求獨(dú)占打開文件的命令,1瞬間獨(dú)占文件:具有建立文件功能的命令對(duì)目標(biāo)文件瞬間獨(dú)占,命令結(jié)束后自動(dòng)釋放(關(guān)閉)文件。 (1)Create (2)Copy To (3)Index On TO (4)Sort To (5)Total To 舉例,12.1.3 要求獨(dú)占打開文件的命令,2要求以獨(dú)占方式打開表文件: (1)Pack:物理刪除帶刪除標(biāo)記的記錄。 (2)Zap:物理刪除表中全部記錄。 (3)Reindex:更新當(dāng)前表中的索引。舉例 () Modify Structure :以共享方式打開表不允許修改表結(jié)構(gòu)及相關(guān)信息,即處于只讀狀態(tài)。,12.1.3
6、 要求獨(dú)占打開文件的命令,3多個(gè)用戶打開文件問題: A用戶以獨(dú)占方式打開的文件,B用戶不能以任何方式打開該文件。 A用戶以共享方式打開的文件,B用戶不能以獨(dú)占方式打開該文件。 違背規(guī)定時(shí),B用戶程序出錯(cuò)類型編號(hào)為1705。,12.2 共享數(shù)據(jù)鎖機(jī)制,加鎖:獲取鎖的過程。 釋放鎖:取消鎖的過程。 加鎖的表:共享打開的表。 加鎖的作用:解決多個(gè)用戶同時(shí)更新數(shù)據(jù)的沖突問題 。,鎖:系統(tǒng)對(duì)數(shù)據(jù)設(shè)置的一種標(biāo)志。在同一時(shí)刻只能有一個(gè)用戶獲得某數(shù)據(jù)的鎖,獲鎖的用戶才能更新數(shù)據(jù),其他用戶只能查數(shù)據(jù)。,12.2.1 記錄加鎖,1. 當(dāng)前記錄加鎖函數(shù) R Lock () 功能:為指定工作區(qū)中當(dāng)前記錄加鎖。若加鎖成
7、功,則返回.T. ;若加鎖失敗,則返回.F. 。,記錄成功加鎖的條件:非結(jié)束記錄;其他用戶既沒對(duì)該記錄加鎖,也沒對(duì)該文件加鎖。,12.2.1 記錄加鎖,.多個(gè)記錄加鎖設(shè)置 Set MultiLock On | Off Off(默認(rèn)):RLock或Lock為個(gè)記錄加鎖 On:用RLock或Lock可為多個(gè)記錄加鎖,12.2.1 記錄加鎖,3.多個(gè)記錄同時(shí)加鎖函數(shù) RLock(,) 功能:若所有記錄都加鎖成功,則返回.T.;若其中有一個(gè)記錄加鎖失敗,則返回.F.,并不對(duì)任何記錄加鎖。 在Set MultiLock Off下,只加鎖最后記錄; 在Set MultiLock On下,加鎖多個(gè)記錄。 舉
8、例,12.2.2 文件加鎖函數(shù),Lock() 功能:為指定工作區(qū)中表文件加鎖。若加鎖成功,則返回.T. ;若加鎖失敗,則返回.F. 。,文件成功加鎖的條件:其他用戶既沒對(duì)該文件加鎖,也沒對(duì)其中任何記錄加鎖。,12.2.3 受鎖機(jī)制影響的命令,1. 文件加鎖的命令:執(zhí)行更新數(shù)據(jù)的命令時(shí),對(duì)當(dāng)前表自動(dòng)文件加鎖;完成命令后,系統(tǒng)自動(dòng)釋放鎖 。命令有:,表操作命令:可能更新多個(gè)記錄的命令,需要文件加鎖;僅更新一個(gè)記錄的命令,需記錄加鎖。,12.2.3 受鎖機(jī)制影響的命令,(1)Delete :邏輯刪除多個(gè)記錄 (2)Recall :去掉多個(gè)記錄的刪除標(biāo)記 (3)Replace :修改多個(gè)記錄中的數(shù)據(jù)
9、選用All、Next n( n=2 )、Rest、For或While 至少一項(xiàng)。 若當(dāng)前表已經(jīng)被其他用戶加了記錄鎖或文件鎖,則系統(tǒng)出錯(cuò)編號(hào)為108。,12.2.3 受鎖機(jī)制影響的命令,(4)Append From :從另一個(gè)文件中追加記錄。 (5)Append Blank:加一個(gè)空記錄。 (6)SQL語言的Insert Into :加記錄。 若當(dāng)前表已經(jīng)被其他用戶加了文件鎖,則系統(tǒng)出錯(cuò)編號(hào)為108。,12.2.3 受鎖機(jī)制影響的命令,. 記錄加鎖的命令:僅對(duì)當(dāng)前待更新的記錄加鎖 ;完成命令后,系統(tǒng)自動(dòng)釋放鎖 。命令有:,(1)Edit:對(duì)正在修改的記錄加鎖。 (2)Change:對(duì)正在修改的記
10、錄加鎖。 (3)Browse:對(duì)正在修改的記錄加鎖。 (4)Delete Next 1|Record n:對(duì)待刪除的記錄加鎖。,12.2.3 受鎖機(jī)制影響的命令,(5)Recall Next 1|Record n:對(duì)待恢復(fù)的記錄加鎖。 (6)Replace Next 1|Record n:對(duì)待修改的記錄加鎖。 若待更新的記錄已經(jīng)被其他用戶加鎖(文件或記錄鎖),系統(tǒng)出錯(cuò)編號(hào)為109。,12.2.3 受鎖機(jī)制影響的命令,(7)SQL語言的Update :對(duì)要修改的記錄加鎖。 (8)SQL語言的Delete From:對(duì)要?jiǎng)h除的記錄加鎖。 若其中某個(gè)記錄被其他用戶加鎖(文件或記錄鎖),則不會(huì)更新任何記錄,而系統(tǒng)出錯(cuò)編號(hào)為130。,12.2.4 釋放鎖,. 自動(dòng)釋放鎖的命令: (1)執(zhí)行RLock,釋放對(duì)應(yīng)工作區(qū)中的文件鎖。 (2)在Set MultiLock Off下,執(zhí)行RLock,釋放對(duì)應(yīng)工作區(qū)中其他鎖。,12.2.4 釋放鎖,(3)Set MultiLock由On轉(zhuǎn)到Off,釋放各工作區(qū)中文件鎖;若某工作區(qū)中有多個(gè)記錄鎖,則釋放該工作區(qū)中的所有記錄鎖,但僅有一個(gè)記錄鎖的工作區(qū),保留其記錄鎖。 (4)關(guān)閉表文件將釋放表中的鎖。,12.2.4 釋放鎖,2. 釋放鎖的專用命令: (1)UNLock:釋
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 倉庫衛(wèi)生管理考核制度
- 高中生宿舍衛(wèi)生規(guī)范制度
- 2026年智慧城市建設(shè)PPP模式應(yīng)用考核案例
- 2026年軟件開發(fā)工程師專業(yè)試題庫及解析
- 金融信息安全態(tài)勢(shì)感知
- 2026年跨境電商聯(lián)盟稅務(wù)籌劃培訓(xùn)實(shí)務(wù)
- 2026內(nèi)蒙古呼和浩特航天經(jīng)濟(jì)開發(fā)區(qū)管理委員會(huì)招聘所屬國(guó)有企業(yè)管理人員2人備考題庫及答案詳解(必刷)
- 小組培訓(xùn)后的制作
- 2026安徽合肥市青年路小學(xué)教育集團(tuán)青年路小學(xué)、黃河路小學(xué)、云谷路小學(xué)春季學(xué)期教師招聘11人備考題庫附答案詳解(輕巧奪冠)
- 2026內(nèi)蒙古呼和浩特市楓葉雙語學(xué)校招聘6人備考題庫含答案詳解(能力提升)
- 電影院消防安全制度范本
- 酒店工程維修合同協(xié)議書
- 2025年版?zhèn)€人與公司居間合同范例
- 電子商務(wù)平臺(tái)項(xiàng)目運(yùn)營(yíng)合作協(xié)議書范本
- 動(dòng)設(shè)備監(jiān)測(cè)課件 振動(dòng)狀態(tài)監(jiān)測(cè)技術(shù)基礎(chǔ)知識(shí)
- 第六講-女性文學(xué)的第二次崛起-80年代女性文學(xué)
- 專題15平面解析幾何(選擇填空題)(第一部分)(解析版) - 大數(shù)據(jù)之十年高考真題(2014-2025)與優(yōu) 質(zhì)模擬題(新高考卷與全國(guó)理科卷)
- 部門考核方案
- 苗木種子采購合同范本
- 檢測(cè)費(fèi)合同范本
- T-CPQS C010-2024 鑒賞收藏用潮流玩偶及類似用途產(chǎn)品
評(píng)論
0/150
提交評(píng)論