2 回答

TA貢獻1852條經驗 獲得超1個贊
用法:該函數執行之前,首先將數據窗口中已有的數據清除掉,然后將數據庫中的數據檢索到數據窗口中。
所以,如果希望將檢索到的數據追加到數據窗口中,需要編寫程序。在數據窗口對象的RetrieveStart事件中返回 2(在retrieveStart中編寫腳本return 2即可) ,即可防止清除掉數據窗口中的已有數據。
返 回 值:數字類型long,表示函數執行完之后數據窗口中顯示出來的數據行數。注意,該返回值不表示檢索到的數據行數。
需要注意的是,只有數據窗口對象中定義的過濾規則影響 Retrieve函數的返回值,函數SetFilter 和Filter并不影響。
例1:下面的程序根據Retrieve函數的返回值顯示提示信息。
long ll_rows
dw_main.SetTransObject(SQLCA)
ll_rows = dw_main.Retrieve()
IF ll_rows < 1 THEN MessageBox("錯誤","沒有檢索到數據。")
例2:帶參數的檢索。
數據窗口對象的SQL語句如下:
SELECT Name, emp.sal, sales.rgn From Employee, Sales
WHERE emp.sal > :an_Salary and sales.rgn = :as_Region
其中,an_Salary和as_Region為檢索參數,分別為數值型和字符型??梢允褂孟旅娴恼Z法檢索數據:
dw_1.Retrieve(50000, "NW")

TA貢獻1829條經驗 獲得超6個贊
RETRIEVE就是從所連接的數據庫里根據數據窗口的語法提取數據。
用法是:首先把數據窗口和數據庫連接,在窗口的open或者數據窗口的constructor事件中dw_1.settransobject(sqlca),連接后,就可以寫dw_1.retrieve()
還可以進行有參數的查詢,需要在數據窗口設置參數,然后dw_1.retrieve(參數1,參數2...)
參數順序和類型與數據窗口必須對應。
返回值是查詢得到的行數
- 2 回答
- 0 關注
- 1428 瀏覽
添加回答
舉報