[討論] DB Connection |
答題得分者是:change.jian
|
BorlandUser
中階會員 發表:148 回覆:217 積分:73 註冊:2004-02-19 發送簡訊給我 |
|
change.jian
版主 發表:29 回覆:620 積分:439 註冊:2003-06-02 發送簡訊給我 |
您好,
其實Data Control的元件是否一直連著DB,認真說起來,這個問題的答案應該是"沒有",因為Data Control連著的元件最終是TDataSet,而TDataSet是否一直連在DB上,其實並沒有.不管是c/s或3-tire,只要是SQL base的資料庫,通常都是你下一道SQL指令(我指select),然後,DB就依據你的SQL指令把當時資料庫裡的資料傳回給你,至於回傳給你的資料後續有人再異動了,DB是不會把你所得到資料再重新更新的.也就是說,db application不應該一直連著資料庫的,他應該只在user有需要時把目前資料庫的資料回傳給使用者知道而已.
給您參考
|
BorlandUser
中階會員 發表:148 回覆:217 積分:73 註冊:2004-02-19 發送簡訊給我 |
|
change.jian
版主 發表:29 回覆:620 積分:439 註冊:2003-06-02 發送簡訊給我 |
引言: 照你的意思是 無論我用dbgrid/sqlquery/clientdataset/datasetprovider也好...只要我未進行commit/applyupdate或sql statement(insert,update,..)等等,delphi的componet都不會連著db嗎?嗯,如果你用SQL Monitor觀察,會發現所有的在DataSet裡的Append,Delete等動作,BDE也都是幫你轉成SQL指令對資料庫執行的.換言之,你應該把Ap對DB的所有要求都看成是一瞬間的事,而不是一個連續的狀態 |
BorlandUser
中階會員 發表:148 回覆:217 積分:73 註冊:2004-02-19 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |