VC++编程访问sql server数据库 高手进来哦

来源:百度知道 编辑:UC知道 时间:2024/06/24 11:29:21
这段程序是通过MFC对话框上的一个按钮来想数据表写一条数据的, 我想在通过另外一个按钮来读取数据并显示在一个列表控件上面;该怎么写啊 高手来帮帮我 弄出来了至少追加100分 谢谢啦
void CADOTestDlg::OnButton1()
{
UpdateData(TRUE);

_RecordsetPtr pPtr;
if (FAILED(pPtr.CreateInstance("ADODB.Recordset")))
{
AfxMessageBox("Create Instance failed!");
return ;
}
CString strSRC;
strSRC="Driver=SQL Server;Server=";
strSRC+=m_nb1;//"se221"
strSRC+=";Database=";
strSRC+=m_nb2;//"MYDB"
strSRC+=";UID=";
strSRC+=m_nb3;//"sa"
strSRC+=";PWD=";
strSRC+=m_nb4;//"123456";
CString strSQL;
strSQL="Insert into T_mytb(time,terminalID,objectID,positionX,positionY) values(";
strSQL+=m_ntime;
strSQL+=",";
strSQL+=m_nterminal;
strSQL+=",";
strSQL+=m_nobject;
strSQL+=",";
strSQL+=m_nX;

_ConnectionPtr m_pConnection;
_RecordsetPtr m_pRecordSet;

m_pConnection.CreateInstance("ADODB.Connection");
if (m_pConnection == NULL)
{
AfxMessageBox("Connection 对象创建失败! 请确认是否初始化了COM环境\r\n");
return ;
}
try{

m_pConnection->ConnectionTimeout = 10;
_bstr_t strCon = "Provider=SQLOLEDB.1; Driver={SQL Server}; Server=MICROSOF-4DAE95; Database=MYDB; uid=username; pwd=userpassword;";
m_pConnection->Open(strCon, "", "", adModeUnknown);
MessageBox("已经连接上数据库");
//MICROSOF-4DAE95 是你所启动的服务器名字;username 是你登陆服务器的用户名;userpassword 是登陆密码

m_pRecordSet.CreateInstance(__uuidof(Recordset));//"ADODB.Recordset"
m_pRecordSet->Open("SELECT * FROM T_mytb", // 查询DemoTable表中所有字段 m_pConnection.GetInterfacePtr(),// 获取库接库的IDispatch指针
adOpenDynamic,adLockOptimistic,adCmdText);

if(!m_pRecordSet->BOF)