導航:首頁 > 編程大全 > 兩個對話框傳遞資料庫

兩個對話框傳遞資料庫

發布時間:2023-03-06 12:12:57

A. VC++6.0通過MFC 創建了 對話框 ,然後怎樣通過SQL Server 連接到資料庫

class DBConnection
{
public:
DBConnection(void);
~DBConnection(void);
int OpenConnect(void);
int ExecuteSQL(_bstr_t strCmd);
_RecordsetPtr GetRecondSetPrt();
private:
_ConnectionPtr m_pConnection; //鏈接資料庫德指針變數
_RecordsetPtr m_pRecordset; //指向記錄集的指針
_variant_t RecordsAffected; //受影響的記錄條數
};

DBConnection::DBConnection(void)
{
m_pConnection=NULL;
m_pRecordset=NULL;
}

DBConnection::~DBConnection(void)
{
m_pConnection=NULL;
m_pRecordset=NULL;
}

//打開資料庫鏈接
int DBConnection::OpenConnect(void)
{
try
{
//創建連接對象
m_pConnection.CreateInstance("ADODB.Connection");

//設置連接字元串

_bstr_t strConnect ="Provider=SQLOLEDB;Data Source=20110121-1545\\SQLEXPRESS;\
Initial Catalog=ExpManDB;User ID=sa;PWD=123";

//設置連接超時時間為5秒
m_pConnection->ConnectionTimeout = 5;

//連接資料庫
m_pConnection->Open(strConnect, "", "", adModeUnknown);
return 1;

}
catch(_com_error e)
{
CString errorMsg;
errorMsg.Format(_T("連接資料庫失敗!\r錯誤信息:%s"),(LPCSTR)e.ErrorMessage());
AfxMessageBox(errorMsg);
return 0;
}
}

//返回受影響的記錄條數
int DBConnection::ExecuteSQL(_bstr_t strCmd)
{
if(m_pConnection->State)
{
try
{
m_pRecordset.CreateInstance("ADODB.Recordset"); //為Recordset對象創建實例
//執行SQL語句,並返回受影響的記錄條數
m_pRecordset=m_pConnection->Execute(strCmd,&RecordsAffected,adCmdText);
return RecordsAffected.intVal;
}
catch(_com_error &e)
{
AfxMessageBox(e.Description());
return 0;
}
}
return 0;
}

//返回記錄集以便後續使用
_RecordsetPtr DBConnection::GetRecondSetPrt()
{
return m_pRecordset;
}
可以像這樣使用,strCmd為sql語句
DBConnection dbConnector;
if(dbConnector.OpenConnect() == 0)
{
return;
}
if(dbConnector.ExecuteSQL((_bstr_t)strCmd) == 0)
{
return;
}
當然如果你還需要取出數據的時候可以這樣用
_RecordsetPtr pRecordSet;
pRecordSet=dbConnector.GetRecondSetPrt();
_variant_t vCardNo;
vCardNo = pRecordSet->GetCollect("cardNO"); //得到數據表種cardNO欄位
後面_variant_t類型就可以轉換為int float CString等各種類型了。
如果有什麼問題再交流。

閱讀全文

與兩個對話框傳遞資料庫相關的資料

熱點內容
網信千金app 瀏覽:753
bjss 瀏覽:823
熊貓tvapp怎麼領竹子 瀏覽:863
管理學選擇工具 瀏覽:226
調試程序debug的使用實驗報告 瀏覽:301
什麼app可以錄制屏幕 瀏覽:848
英雄聯盟保存回放在哪個文件夾 瀏覽:693
微信賣盜版 瀏覽:190
編程適合什麼人群學習 瀏覽:479
安卓使資料庫中的一列相加 瀏覽:184
ppt聲音文件在哪裡 瀏覽:325
vs2010折疊代碼快捷鍵 瀏覽:531
flyme系統升級關閉 瀏覽:628
米家app電視如何添加 瀏覽:353
程序員死後網站怎麼處理 瀏覽:667
數控編程方向怎麼寫 瀏覽:591
win10怎麼找到寫字板 瀏覽:756
陰陽師安卓獨立版本 瀏覽:395
無法復制u盤內的文件錯誤 瀏覽:737
u盤裝系統不是iso文件 瀏覽:181

友情鏈接