使用ado方式訪問資料庫,查詢記錄是否存在的方法如下所示:
方法一:
cstring str;
str.format("name='%s'",m_name); //name為查詢的字段,m_name為查詢的名字
m_precordset->filter=(_bstr_t)str; //開始查詢
m_precordset->requery(0); //用查詢結果更新當前記錄集
//向列表插入查詢到的資料
int i=0;
while(!m_precordset->adoeof)
如果 i =0, 則待查詢的記錄不存在;
如果 i>0, 則待查詢的記錄在資料庫中存在。
這種方法當資料量很大時,執行速度比較慢。
方法二:
_variant_t recordsaffected;
cstring str = _t("select count(*) from tablename where ");
str += sn_num;
str += _t("=\'") + key + _t("\'");
m_precordset = m_pconnection->execute((_bstr_t)str, &recordsaffected, adcmdtext);
_variant_t vindex = (long)0;
_variant_t vcount = m_precordset->getcollect(vindex);
int count = vcount.lval;
如果 count =0, 則待查詢的記錄不存在;
如果 count>0, 則待查詢的記錄在資料庫中存在。
當資料量很大時,方法二比方法一要快很多。
ado讀取資料庫
當我們在使用ado運算元據庫的時候經常會碰到一些問題!例如資料庫為空我們就應該對是否為空做出判斷!variant t var var bstr t m precordset getcollect z controllersn if var.vt vt null else m list.setitem...
ADO 訪問資料庫
using system using system.collections.generic using system.componentmodel using system.data using system.drawing using system.text using system.window...
ADO資料庫示例
stdafx.h import c program files common files system ado msado15.dll no namespace rename eof nul adodlg.cpp coinitialize null connectionptr spconn uuid...