16,472
社区成员
发帖
与我相关
我的任务
分享
#include "stdio.h"
#include "stdafx.h"
#include "windows.h"
#import "C:\Program Files\Common Files\System\ado\msado20.tlb" no_namespace rename("EOF", "adoEOF")
HRESULT ComInit();
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
_ConnectionPtr pCn;
_RecordsetPtr pRs;
_variant_t vtEmpty;
_variant_t vRsinfo;
long ccc;
ComInit();
pCn.CreateInstance(__uuidof(Connection));
pRs.CreateInstance(__uuidof(Recordset));
pCn->Open("DRIVER={Microsoft Access Driver (*.mdb)};DBQ=C:\\VcADO\\users.mdb","","",-1);
if(pCn->State==0){
MessageBox(0,"连接数据库失败。","连接失败",MB_OK);
}else{
MessageBox(0,"状态值"+pCn->State,"连接成功",MB_OK);
vtEmpty="select * from Userinfo";
pRs->Open(vtEmpty, pCn.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
ccc=pRs->RecordCount;
//最大问题的地方,数据库里明明有数据,但cccc却是0
if(ccc>=1){
//这里也有问题,下面两句都有数据类型问题
MessageBox(0,"查询到"+ccc+"条数据","查询成功",MB_OK);
MessageBox(0,"查询内容:"+vRsinfo=pRs->Fields->GetItem("UserName")->GetValue,"查询成功",MB_OK);
pRs->Close;
}else{
MessageBox(0,"没有查询到数据.","查询失败",MB_OK);
}
pCn->Close;
}
return 0;
}
//COM 使用时初始化
HRESULT ComInit()
{
HRESULT hr = S_OK; // 默认返回值
if FAILED(CoInitialize(NULL)) // COM 初始化调用
{
CoUninitialize();
hr = E_UNEXPECTED;
}
return hr;
}
char* pp;
ltoa(ccc,pp,10);
#include "stdafx.h"
#include "stdio.h"
#include "windows.h"
#include "string.h"
#import "C:\Program Files\Common Files\System\ado\msado20.tlb" no_namespace rename("EOF", "adoEOF")
HRESULT ComInit();
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
// TODO: Place code here.
_ConnectionPtr pCn;
_RecordsetPtr pRs;
_variant_t vtEmpty;
_variant_t vRsinfo;
long ccc;
char jj[255];
int j;
ComInit();
pCn.CreateInstance(__uuidof(Connection));
pRs.CreateInstance(__uuidof(Recordset));
//pCn->Open("PROVIDER=MSDASQL;dsn=bbq;uid=;pwd=;", "", "", -1);
//pCn->Open("PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\VcADO\\users.mdb", "", "", -1);
pCn->Open("DRIVER={Microsoft Access Driver (*.mdb)};DBQ=C:\\VcADO\\users.mdb","","",-1);
if(pCn->State==0){
MessageBox(0,"连接数据库失败。","连接失败",MB_OK);
}else{
//MessageBox(0,"状态值"+pCn->State,"连接成功",MB_OK);
vtEmpty="select * from 用户信息表";
pRs->Open(vtEmpty, pCn.GetInterfacePtr(),adOpenStatic,adLockOptimistic,adCmdText);
ccc=pRs->RecordCount;
if(ccc>=1){
//j=sprintf(jj,"查询到%d条数据",ccc);
//MessageBox(0,jj,"查询成功",MB_OK);
vRsinfo=pRs->Fields->GetItem("姓名")->GetValue();
j=sprintf(jj,"查询到:%s",(char*)(_bstr_t)vRsinfo);
MessageBox(0,jj,"查询成功",MB_OK);
pRs->Close();
}else{
MessageBox(0,"没有查询到数据.","查询失败",MB_OK);
}
pCn->Close();
}
return 0;
}
//COM 使用时初始化
HRESULT ComInit()
{
HRESULT hr = S_OK; // 默认返回值
if FAILED(CoInitialize(NULL)) // COM 初始化调用
{
CoUninitialize();
hr = E_UNEXPECTED;
}
return hr;
}
char jj[255];
int j;
j=sprintf(jj,"查询内容:%s",pRs->Fields->GetItem("UserName")->GetValue());
MessageBox(0,jj,"查询成功",MB_OK);
char* jj;
int j;
j=sprintf(jj,"查询内容:%v",pRs->Fields->GetItem("UserName")->PutValue("value"));
MessageBox(0,jj,"查询成功",MB_OK);