檢視是VFP所提供的一個強大的資料處理功能,使用檢視,不僅可以從資料表中提取一組記錄,而且在需要時可以改變記錄值,並將更新的結果反映在源資料表中。但在VFP中新建的檢視並不是可以更新的,我們需要修改檢視的屬性才可以使他們可以更新。修改檢視屬性的方法有兩種:
1、在檢視設計器中我們只需選中“更新條件”中的“傳送SQL更新選項”(在選擇這個選項前必須選中一個關鍵字和至少一個可更新的欄位)就可使檢視更新。
2、在實際應用中,經常需要臨時產生一個檢視,這樣我們就必須利用程式修改檢視的屬性使其可以更新,例如:USE XJMONTHCREATE SQL VIEW XJVIEW AS SELECT *FROM XJMONTH WHERE 科室名=KSMUSE XJVIEWCURSORSETPROP("KEYFIELDLIST","姓名")*設定檢視與基表對應的關鍵欄位,該關鍵欄位必須是唯一的,否則在傳送SQL更新時會出現錯誤。CURSORSETPROP("SENDUPDATES",.T.)*開啟SQL更新開關,使檢視可以更新基表。另外,利用CURSORSETPROP函式還可以設定更新欄位(預設值是所有欄位)、基表別名、更新方式等其他屬性,但實際上預設值大部分都能滿足需要,只需要制定關鍵字,開啟SQL更新開關就可以了。使識圖可更新的另一個函式是DBSETPROP(),使用DBSETPROP()函式可為當前資料庫或當前資料庫中的欄位、命名連線、表或檢視設定屬性,但DBSETPROP()函式要求以獨佔方式使用當前資料庫,而CURSORTSETPROP()則可以修改遠端檢視或臨時表的屬性,因此還涉及到緩衝訪問和更新遠端表的控制,另外,兩者在語法上也存在一些差別。
檢視是VFP所提供的一個強大的資料處理功能,使用檢視,不僅可以從資料表中提取一組記錄,而且在需要時可以改變記錄值,並將更新的結果反映在源資料表中。但在VFP中新建的檢視並不是可以更新的,我們需要修改檢視的屬性才可以使他們可以更新。修改檢視屬性的方法有兩種:
1、在檢視設計器中我們只需選中“更新條件”中的“傳送SQL更新選項”(在選擇這個選項前必須選中一個關鍵字和至少一個可更新的欄位)就可使檢視更新。
2、在實際應用中,經常需要臨時產生一個檢視,這樣我們就必須利用程式修改檢視的屬性使其可以更新,例如:USE XJMONTHCREATE SQL VIEW XJVIEW AS SELECT *FROM XJMONTH WHERE 科室名=KSMUSE XJVIEWCURSORSETPROP("KEYFIELDLIST","姓名")*設定檢視與基表對應的關鍵欄位,該關鍵欄位必須是唯一的,否則在傳送SQL更新時會出現錯誤。CURSORSETPROP("SENDUPDATES",.T.)*開啟SQL更新開關,使檢視可以更新基表。另外,利用CURSORSETPROP函式還可以設定更新欄位(預設值是所有欄位)、基表別名、更新方式等其他屬性,但實際上預設值大部分都能滿足需要,只需要制定關鍵字,開啟SQL更新開關就可以了。使識圖可更新的另一個函式是DBSETPROP(),使用DBSETPROP()函式可為當前資料庫或當前資料庫中的欄位、命名連線、表或檢視設定屬性,但DBSETPROP()函式要求以獨佔方式使用當前資料庫,而CURSORTSETPROP()則可以修改遠端檢視或臨時表的屬性,因此還涉及到緩衝訪問和更新遠端表的控制,另外,兩者在語法上也存在一些差別。