ACCESS數據庫鎖定問題_第1頁
ACCESS數據庫鎖定問題_第2頁
ACCESS數據庫鎖定問題_第3頁
ACCESS數據庫鎖定問題_第4頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、ACCESS數據庫鎖定問題問題1單位網站突然有的時候不能打開網頁。重啟電腦后問題解決。說是CONN.ASP第6行錯誤。同時生成一個.LDB文件。在網上查了下說是數據庫沒有關閉或鎖定了。請問如何關閉啊,下邊是CONN.ASP代碼: <% starttime=timer() StrSQL="DBQ="+server.mappath("admin/data/news30000.mdb")+"DRIVER=Microsoft Access Driver (*.mdb);" 'connstr="driver=SQL Se

2、rver;server=(local);database=master;uid=sa;pwd=;" set conn=server.createobject("ADODB.CONNECTION") conn.open StrSQL(第6行) %>答:如果是ACCESS數據庫,應該是并發訪問造成的問題。因為ACCESS沒有行鎖。所以你有個一個用戶在網上改一條數據,另外一個用戶再上來訪問相同一條數據時就給鎖了。重啟動后所有的連接全斷開了,所以就沒問題了。如果有可能最好不用ACCESS做后臺數據庫。贊同-問題2我的數據庫老是被鎖住,網頁打不開,請高手幫忙!我的co

3、nn.asp是:<%scadb=mydata&"datahotel/#feel.mdb" 'mydata 為各文件中設置的路徑,請不要改動connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(""&scadb&"")On Error Resume Next Set conn = Server.CreateObject("ADODB.Connection") c

4、onn.open connstr If Err Then err.Clear Set Conn = Nothing Response.Write "<div align='center'><p><br><br><br><font color='red' site='3pt'>數據庫連接出錯!請檢查數據庫連接指向-</font></p></div>" Response.End End If%>答:你的數據庫連接寫法是

5、正確的,是不是數據庫太大,幾百M的話容易出現這個問題,建議換sql數據庫。不想換的話可以把數據庫下載到本地壓縮修復一下再傳上去。-問題3怎么在asp中判斷access數據庫已經被鎖定用asp作為前端,數據庫是.mdb和.xls文件(在不同的頁面中,兩個數據庫不是一起用的)。有時候需要打開數據庫文件,此時數據庫會被鎖定(即是產生.ldb文件的情況),提示“Microsoft JET Database Engine error '80004005' .已經被另一個用戶獨占”。我想redirect到一個統一的維護頁面,應該用什么語句判斷表被獨占了呢?謝謝!問題補充: 但是我要在哪里加

6、上跳轉語句呢?我就是不想讓別人看到“Microsoft JET Database Engine error '80004005' .”的提示.請說一下怎么跳轉好嗎?小弟初學答:我知道用判斷語句,其實我想問的是應該用什么語句.不過問題解決了,判斷err就行啦,呵呵-問題4ACCESS多個人使用數據庫鎖定,怎么解鎖答:網友你好,如果一個數據庫多個人使用的話,那么就需要它具有網絡功能。可是Access是一個垃圾數據庫,只適合單機使用。如果你想使用網絡網絡庫,就用SQL Server 2000挺好的呀,可以在微軟XP 系統上安裝開發版本的。如果你的問題是想問當軟件客戶端在連接Acces

7、s的時候,會出現游標問題,那么就選擇游戲類型唄,我這邊有的,查詢,刪除,更新等等。-問題5Access數據庫連接關閉與.ldb文件鎖定解決方法答:這幾天一直被ASP調用數據庫引起CPU使用率高達100%的問題困擾,剛剛終于把問題解決了,可以睡個好覺了!常用的數據庫連接方式:Dim connstrdim dbpathdbpath="#123$asd31.mdb"connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(dbpath)Set conn = Serv

8、er.CreateObject("ADODB.Connection")conn.Open connstr關閉語句不僅是.(斷開記錄)Rs.closeSet Rs=Nothing還有:(斷開連接)Conn.CloseSet Conn=Nothing排除上面的原因之后.用ACCESS打開你的數據庫,選擇菜單中的工具->選項->高級更改默認打開模式為共享,更改默認記錄鎖定為不鎖定.如仍然不行將下面的選項使用記錄級鎖定也取消.確定后保存,然后打開,修復/壓縮數據庫.刪除目錄中的LDB文件(如無法刪除,先結束相關進程或重新啟動計算機刪除即可)有時候檢查一下是否有頁面同時爭

9、用資源的情況,我的問題就是屬于這個情況造成的!歡迎大家光臨指導我們的網站:(濟寧網站建設專家-易遠網絡)問題6關于“鎖”的問題盡管access不是一個大型的數據庫,但也要考慮多用戶使用時的并發性及有可能產生的錯誤,如“讀臟數據”、“不可重復讀”、“修改丟失”等,所以并發控制也是很重要的。我們知道,“鎖”是解決并發出錯問題的主要方法,“鎖”有主要有兩種:排它鎖“x”與共享鎖“s”,在access環境中,怎樣應用這兩“鎖”呢?沒有人能指教嗎?請大家展開討論。好似ACCESS只有共享鎖,而沒有排它鎖,即使有用戶正在編輯某一數據,別的用戶照樣可以讀這個數據,這樣就有可能產生一些并發錯誤,如“不可重復讀

10、”等,怎樣鎖定正在編輯的數據,使數據沒有修改結束之前,數據不可讀呢?獨占就不能供多用戶使用了,我們要探索種在多用戶環境下的解決方法。上面的朋友的回答都沒有能解決問題。對于并發的數據庫而言,排它鎖是必須的。舉個例子說,如有一貨物銷售系統,現在某種貨物庫存還有100箱,此時甲進行操作,擬售出貨物60箱,系統查出貨物還有100箱,售出操作允許執行;就在甲正進行售出操作的幾乎同一時刻(甲已經鍵入售出60箱,但有些其他信息正在鍵入或信息正在通信線路上傳輸,售出記錄還沒有真正保存到數據庫),乙也擬售出這種貨物60箱,因為甲的操作還沒有結束,記錄還沒有保存,所以當前庫存還是100箱,所以系統也允許乙售出這種貨物60箱。當兩人的操作都完成了之后,實際共售出了貨物120箱,但庫存根本就沒有這么多貨,并發操作引起了錯誤。為了備免這樣的情況發生,就要用到“排它鎖S”,當某一操作員擬售出某種貨物的時候,必須獲得這種貨物的“排它鎖”,鎖定這種貨物,使其他用戶不能編輯相關的數據,也不能讀取相關的數據。如上例,甲擬售出某貨物60箱,就將這種貨物鎖定,在甲沒有操作完成期間,乙也擬售出貨物60箱,因甲已鎖定數據,乙沒法讀取數據,只能等待甲釋放“鎖”。甲操作完成之后,釋放了“鎖”,乙獲得控制權可以讀取數據,但這時庫存量已經是40箱

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論