Delphi开发的数据库程序在C:\PDOXUSRS.NET生成文件,拒绝访问及读写权限
Delphi開發的數據庫程序在C:\PDOXUSRS.NET生成文件,拒絕訪問及讀寫權限, "無法打開 PARADOX.NET。這個文件可以隨便刪除的,下次會自動產生。
Permission denied.C:\PDOXUSRS.NET
如果用于沒有對C:\PDOXUSRS.NET的寫權限,系統就會報錯。
PDOXUSRS.NEt為計算機根目錄下的一個數據庫,在文件C:盤根目錄下生成。
果你裝了Delphi編的程序,而它用的是Paradox數據庫,就會出現這樣的問題。我使用BDE訪問Oracle數據庫也會出現此問題。
?
可以改變這個文件的存放位置
如Tdatabase1.session.netfiledir:=d:\abdd\;或者存放在自己程序的目錄,這樣就不會有權限的問題了。還有幾個屬性NetFileDir、PrivateDir和ConfigMode屬性。
我發現當Tquery1.CachedUpdates:=true;時就要產生這個文件。
?
Network initialization failed.
Permission denied. File:C:\PDOXUSRS.NET Directory:C:\.ExeSQL是直接執行SQL語句,而與CachedUpdates沒有任何關系。
CachedUpdates是指對TTable或TQuery中的已修改的數據進行緩存,直到調用
ApplyUpdates.
ApplyUpdates是對TQuery或TTable中已修改,但為提交的數據進行提交,
并且只有在TQuery或TTable對象的CachedUpdates=True且Active=True,
State=dsbrowse時才能調用。
TQuery的CachedUpdates必須陪合TUpdateSQL控件才能使用。
例如:
??? Query1.SQL.Text:='select field1,field2 from table1';
??? Query1.CachedUpdates:=True;
??? Query1.UpdateObject:=UpdateSQL1;
??? UpdateSQL1.InsertSQL:='insert table1(field1,field2) values (:field1,:field2)';
??? UpdateSQL1.deleteSQL:='delete from table1 where field1=:field1,field2=:field2';
??? UpdateSQL1.ModifySQL:='update table1 set field1=:field1,field2=:field2 where field1=:old_field1 and field2=:old_field2;
??? Query1.Open;
??? Query1.First;
??? while not Query1.Eof? do begin
?????? Query1.Edit;
?????? Query1.FieldByName('field1').AsString:='123';
?????? Query1.Post; //此時數據并未提交到后臺。
?????? Query1.Next;
??? end;
??? Query1.Database.StartTransaction
??? try
????? Query1.ApplyUpdates;
????? Query1.Database.Commit;
?? except
????? Query1.Database.Rollbback;
????? raise;
?? end;??
?? Query1.CommitUpdates;
?
?
Paradox數據庫文件放在一服務器上的某一共享目錄下,當一個用戶在訪問, 另一用戶打開文件時會顯示“Pdoxusrs.Lck 被其它用戶使用.
, Paradox.Lck, PdoxUsrs.Lck
文件是用來控制紀錄或文件鎖定的。paradox就靠它知道當前紀錄有誰在用。
這是系統文件可以不必管它。
--------------------- 本文來自 大聰 的CSDN 博客 ,全文地址請點擊:https://blog.csdn.net/dacong/article/details/51039990?utm_source=copy
轉載于:https://www.cnblogs.com/alannxu/p/9758556.html
總結
以上是生活随笔為你收集整理的Delphi开发的数据库程序在C:\PDOXUSRS.NET生成文件,拒绝访问及读写权限的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 解决vs启动出现“cannot find
- 下一篇: PHP中常见的几种运行代码的方式