日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

VC动态链接数据库类ADOConn

發布時間:2023/12/15 数据库 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 VC动态链接数据库类ADOConn 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
//環境Windows XP SP3+VS2010 UNICODE //頭文件ADOConn.h #pragma once
#import "c:\Program Files\Common Files\System\ado\msado15.dll" no_namespace ?\ rename("EOF","adoEOF") rename("BOF","adoBOF")
class ADOConn { public: ADOConn(void); ~ADOConn(void); void OnInitADOConn(); void ExitConnect(); _RecordsetPtr& GetRecordset(_bstr_t bstrSQL); BOOL ExecuteSQL(_bstr_t bstrSQl);
// public: _ConnectionPtr m_pConnection; _RecordsetPtr m_pRecordset; };
//實現文件ADOConn.cpp #include "StdAfx.h"
#include "ADOConn.h"
ADOConn::ADOConn(void) { }
ADOConn::~ADOConn(void) { }
void ADOConn::OnInitADOConn() { //初始化OLE/COM庫環境 ::CoInitialize(NULL); try { m_pConnection.CreateInstance("ADODB.Connection"); // 設置連接字符串,必須是BSTR型或者_bstr_t類型
TCHAR szFilePath[MAX_PATH + 1]; GetModuleFileName(NULL, szFilePath, MAX_PATH); (_tcsrchr(szFilePath, _T('\\')))[1] = 0; ? ? ? ? ? ? //刪除文件名,只獲得路徑。 CString dbpath= szFilePath; TRACE1("dbpath = %s\n",dbpath);
//Access 2003 //_bstr_t strConnect="uid=;pwd=;DRIVER={Microsoft Access Driver(*.mdb)};DBQ=nkj.mdb;"; ? ?//Access 2003標準鏈接 ? //_bstr_t strConnect ?= "Driver={Microsoft Access Driver (*.mdb)}; DBQ=C:\App1\你的數據庫名.mdb; Exclusive=1; Uid=你的用戶名; Pwd=你的密碼;" ?//獨占方式連接 _bstr_t strConnect = _T("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=") + dbpath ?+ _T("data\\nkj.mdb;User ID=admin;Password=;"); ? //普通方式無密碼?? //_bstr_t strConnect = _T("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=") + dbpath + _T("data\\nkj.mdb;Jet OLEDB:Database Password=你的密碼;"); ?? //普通方式,有密碼?
//Access 2007 //_bstr_t strConnect =Provider="Microsoft.ACE.OLEDB.12.0;Data Source=C:\myFolder\myAccess2007file.accdb;Persist Security Info=False; " ; ? //標準安全鏈接 //_bstr_t strConnect =Provider="Microsoft.ACE.OLEDB.12.0;Data Source=C:\myFolder\myAccess2007file.accdb;Jet OLEDB:Database Password=MyDbPassword;"; ? ?//包括數據庫密碼
//SQL Server //_bstr_t strConnect = "Provider=SQLOLEDB; Server=127.0.0.1;Database=Mis; uid=sa; pwd=sa;";
m_pConnection->Open(strConnect,"","",adModeUnknown); } catch (_com_error e) { AfxMessageBox(e.Description()); } }
void ADOConn::ExitConnect() {
if (m_pRecordset!=NULL) { m_pRecordset->Close(); } m_pConnection->Close();
::CoUninitialize(); }
_RecordsetPtr& ADOConn::GetRecordset(_bstr_t bstrSQL) { try { if (m_pConnection == NULL) { OnInitADOConn(); } m_pRecordset.CreateInstance(__uuidof(Recordset)); m_pRecordset->Open(bstrSQL,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
} catch(_com_error e) { AfxMessageBox(e.Description()); } return m_pRecordset;
}
執行SQL語句,Insert Update _variant_t BOOL ADOConn::ExecuteSQL(_bstr_t bstrSQL) { _variant_t RecordAffected; try { if (m_pConnection == NULL) { OnInitADOConn(); } m_pConnection->Execute(bstrSQL,NULL,adCmdText /*文本命令*/); return TRUE; } catch (_com_error e) { AfxMessageBox(e.Description()); return FALSE; }
}
//簡單用法,記得在XXX.CPP添加 ?#include "ADOConn.h"
BOOL CXXX::OnInitDialog()
{

? //其他代碼 m_listUser.SetExtendedStyle (m_listUser.GetExtendedStyle()|LVS_EX_HEADERDRAGDROP|LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES | LVS_EX_ONECLICKACTIVATE); m_listUser.InsertColumn(0, _T("#"), LVCFMT_LEFT,20); m_listUser.InsertColumn(1, _T("用戶"), LVCFMT_LEFT, 60); m_listUser.InsertColumn(2, _T("性別"), LVCFMT_LEFT, 60); m_listUser.InsertColumn(3, _T("職務"), LVCFMT_LEFT, 60); m_listUser.InsertColumn(4, _T("用戶類型"), LVCFMT_LEFT, 80); ADOConn ?m_AdoConn; //open database m_AdoConn.OnInitADOConn(); CString ?sql; sql.Format(_T("select* from tbUser order by No desc")); _RecordsetPtr ? m_pRecordset; m_pRecordset = m_AdoConn.GetRecordset((_bstr_t)sql); //遍歷記錄集 while(m_AdoConn.m_pRecordset->adoEOF ?== 0) { m_listUser.InsertItem(0,_T("")); m_listUser.SetItemText(0,0,(TCHAR *)(_bstr_t)m_pRecordset->GetCollect("No")); m_listUser.SetItemText(0,1,(TCHAR *)(_bstr_t)m_pRecordset->GetCollect("user")); m_listUser.SetItemText(0,2,(TCHAR *)(_bstr_t)m_pRecordset->GetCollect("sex")); m_listUser.SetItemText(0,3,(TCHAR *)(_bstr_t)m_pRecordset->GetCollect("position")); m_listUser.SetItemText(0,4,(TCHAR *)(_bstr_t)m_pRecordset->GetCollect("permissions")); m_pRecordset->MoveNext(); } m_AdoConn.ExitConnect();
? //其他代碼

return TRUE; ?// return TRUE unless you set the focus to a control // 異常: OCX 屬性頁應返回 FALSE }

總結

以上是生活随笔為你收集整理的VC动态链接数据库类ADOConn的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 色www.| 欧美一区二区三区成人精品 | 香蕉av777xxx色综合一区 | 丰满岳乱妇一区二区 | 久草国产在线观看 | 一本大道久久 | www毛片com| 国产盗摄一区二区 | 久久αv | 国产夫妻精品 | 手机av资源 | 密臀av在线 | 丝袜人妻一区二区三区 | 国产午夜电影 | 欧美激情在线观看一区 | 欧美成人三级伦在线观看 | 久久久九九| 成人免费毛片嘿嘿连载 | 男生操男生网站 | av在线成人| 播播成人网 | 精品人妻无码中文字幕18禁 | 影音先锋在线看片资源 | 2021国产在线视频 | 精品久久久免费 | 国产免费a | 国产做爰免费观看视频 | 国产午夜手机精彩视频 | 成人h动漫精品一区 | 天天想你免费观看完整版高清电影 | 一道本一区二区 | 国产av无码专区亚洲av毛片搜 | 免费在线观看国产精品 | 97久久免费视频 | 中国av毛片| 疯狂做爰的爽文多肉小说王爷 | 性一级视频 | 色原网 | 国产精品剧情 | 波多野结衣办公室33分钟 | 天天色天天射综合网 | 潘金莲黄色一级片 | 久久久综合色 | 欧美日韩免费高清 | 精品国产伦一区二区三区 | 人妻精品久久久久中文字幕 | 丰满少妇一区二区三区 | 四虎影 | 动漫美女被吸乳奶动漫视频 | va在线观看 | 亚洲一区中文字幕 | 福利免费视频 | 欧美日韩精品在线观看 | 中文字幕久久av | 日韩精品一区二区三区久久 | 亚洲av人无码激艳猛片服务器 | 精品一区二区三区中文字幕 | 91黄在线看 | 亚洲国产视频一区二区三区 | 天天操夜夜欢 | 亚洲精品观看 | 午夜免费网站 | www.69pao.com | 丝袜国产视频 | 国产精品自偷自拍 | 午夜不卡在线观看 | 国内一区二区 | 99视频在线播放 | 在线中文字幕播放 | 欧洲精品视频在线 | 毛片网站免费观看 | 国产精品美女毛片真酒店 | 四虎影视黄色 | 91在线观看视频网站 | 久久草av | 波多野结衣黄色 | 亲子伦视频一区二区三区 | 欧美videossex极品 | 九九九网站 | 麻豆视频免费 | 日韩在线免费观看av | 少妇姐姐 | 蜜臀av一区二区 | 亚洲精品一区二区三区不卡 | 日韩动漫av| 久久九精品 | 日韩区在线观看 | 亚洲黄在线观看 | 精品国自产在线观看 | 欧洲-级毛片内射 | 中国 免费 av | 久久久香蕉 | 无罩大乳的熟妇正在播放 | 国产精品久久国产精品99 | 一级黄色录象 | av色站 | 日本www高清| 18禁肉肉无遮挡无码网站 | 超碰av男人的天堂 |