CRecordset类
CRecordset類
https://blog.csdn.net/elcoteq983/article/details/7000745
CRecordset::Open
virtual BOOL Open(
UINT nOpenType = AFX_DB_USE_DEFAULT_TYPE,
LPCTSTR lpszSQL = NULL,
DWORD dwOptions = none
);
nOpenType
接受默認值AFX_DB_USE_DEFAULT_TYPE,或使用枚舉OpenType中的以下值之一:
CRecordset :: dynaset具有雙向滾動的記錄集。打開記錄集時確定記錄的成員資格和順序,但是在獲取操作之后,其他用戶對數據值所做的更改是可見的。動態集也稱為鍵集驅動的記錄集。
CRecordset :: snapshot具有雙向滾動的靜態記錄集。記錄集打開時確定記錄的成員資格和順序;獲取記錄時確定數據值。在記錄集關閉然后重新打開之前,其他用戶所做的更改不可見。
CRecordset :: dynamic具有雙向滾動的記錄集。在獲取操作之后,其他用戶對成員資格,排序和數據值所做的更改是可見的。請注意,許多ODBC驅動程序不支持此類型的記錄集。
CRecordset :: forwardOnly只有前滾動的只讀記錄集。
對于CRecordset,默認值為CRecordset
:: snapshot。默認值機制允許Visual C
++向導與ODBC
CRecordset和DAO
CDaoRecordset交互,它們具有不同的默認值。
有關這些記錄集類型的詳細信息,請參閱文章Recordset(ODBC)。有關相關信息,請參閱Windows SDK中的文章“使用塊和可滾動游標”。
lpszSQL
包含以下內容之一的字符串指針:
一個NULL指針。
表的名稱。
SQL SELECT語句(可選擇使用SQL WHERE或ORDER BY子句)。
一個CALL語句,指定預定義查詢(存儲過程)的名稱。 請注意,不要在花括號和CALL關鍵字之間插入空格。
有關此字符串的更多信息,請參閱表和在備注下對ClassWizard角色的討論。
注意
結果集中列的順序必須與DoFieldExchange或DoBulkFieldExchange函數覆蓋中的RFX或Bulk RFX函數調用的順序相匹配。
dwOptions
一個位掩碼,可以指定下面列出的值的組合。 其中一些是相互排斥的。 默認值為none。
CRecordset
:: none沒有設置選項。 此參數值與所有其他值互斥。 默認情況下,可以使用“編輯”或“刪除”更新記錄集,并允許使用AddNew追加新記錄。 可更新性取決于數據源以及您指定的nOpenType選項。 無法優化批量添加。 批量行提取將不會實現。 記錄集導航期間不會跳過已刪除的記錄。 書簽不可用。 實現自動臟字段檢查。
CRecordset
:: appendOnly不允許在記錄集上編輯或刪除。 僅允許AddNew。 此選項與CRecordset
:: readOnly互斥。
CRecordset
:: readOnly以只讀方式打開記錄集。 此選項與CRecordset
:: appendOnly互斥。
……
返回值
如果CRecordset對象已成功打開,則為非零; 否則為0,如果CDatabase
:: Open(如果被調用)返回0。
備注
您必須調用此成員函數來運行記錄集定義的查詢。 在調用Open之前,必須構造記錄集對象。
此記錄集與數據源的連接取決于在調用Open之前構造記錄集的方式。 如果將CDatabase對象傳遞給尚未連接到數據源的記錄集構造函數,則此成員函數使用GetDefaultConnect嘗試打開數據庫對象。 如果將NULL傳遞給記錄集構造函數,則構造函數會為您構造CDatabase對象,而Open會嘗試連接數據庫對象。 有關在這些不同情況下關閉記錄集和連接的詳細信息,請參閱關閉。
總結
以上是生活随笔為你收集整理的CRecordset类的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【图像标注】使用vue3实现图像标注功能
- 下一篇: android 动态壁纸 时钟,Andr