![](https://img.examw.com/index/logo.png)
2017年自考《物流軟件開發(fā)工具》章節(jié)復(fù)習(xí)題:數(shù)據(jù)窗口控件
1.數(shù)據(jù)窗口對象與數(shù)據(jù)窗口控件有何不同?各自的作用是什么?
答:數(shù)據(jù)窗口對象是訪問數(shù)據(jù)庫的PB對象,數(shù)據(jù)窗口控件是窗口中放置的控件,數(shù)據(jù)窗口控件可以關(guān)聯(lián)一個數(shù)據(jù)窗口對象,從而顯示和編輯數(shù)據(jù)庫內(nèi)容。
2.怎樣使數(shù)據(jù)窗口控件與數(shù)據(jù)窗口對象相關(guān)聯(lián)?怎樣為數(shù)據(jù)窗口控件分配事務(wù)對象?
答:有兩種方式可以將數(shù)據(jù)窗口對象和數(shù)據(jù)窗口控件連接起來。一種是在窗口畫板中給數(shù)據(jù)窗口設(shè)置DataObject屬性,這是一種最常見的方式。另一種是利用腳本語句建立數(shù)據(jù)窗口控件和某個數(shù)據(jù)窗口對象的動態(tài)聯(lián)系,這樣可以使一個數(shù)據(jù)窗口控件在不同的情況下連接不同的數(shù)據(jù)窗口對象,以適應(yīng)不同的情況。
可以使用PowerBuilder提供的兩個函數(shù)SetTrans()和SetTransObject()來為數(shù)據(jù)窗口控件設(shè)置事務(wù)對象。
3.SetTransObject函數(shù)和SetTrans函數(shù)的作用是什么?二者有什么區(qū)別?
答:SetTransObject函數(shù)和SetTrans函數(shù)的作用是數(shù)據(jù)窗口控件分配事務(wù)對象。
SetTrans函數(shù)將一個特定的事務(wù)對象拷貝到數(shù)據(jù)窗口控件和內(nèi)部事務(wù)對象中。SettransObject()與SetTrans()的不同之處在于SetTrans不要求使用CONNECT語句和DISCONNECT語句,PowerBuilder會替用戶自動完成這些功能。每次向數(shù)據(jù)庫發(fā)送這樣的命令語句時都會這么做,因此當(dāng)用戶要求數(shù)據(jù)窗口對象檢索數(shù)據(jù)時,它做一次CONNECT、Retrieve、Disconnect。當(dāng)要求它更新數(shù)據(jù)庫時,它做一次CONNECT、Update、Disconnect。這樣每次與數(shù)據(jù)庫交互,應(yīng)用程序的性能會大大降低。所以,在一般情況,用戶還是使用SetTransObject()函數(shù)來自己管理數(shù)據(jù)庫的連接與斷開。