VC数据库变量引用问题 (刚刚没分,重发

mxgd123 2009-08-18 08:45:05
#pragma once
#include <iostream>


#import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF","rsEOF")
using namespace std;


#include "stdafx.h"

int main(){

_ConnectionPtr m_pConnection;

CoInitialize(NULL);

m_pConnection.CreateInstance(__uuidof(Connection));

try
{
m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db1.mdb","","",adModeUnknown);

}
catch(_com_error e)
{
cout < <"数据库连接失败,确认数据库db1.mdb是否在当前路径下!" < <endl;
return FALSE;
}
_RecordsetPtr m_pRecordset;

m_pRecordset.CreateInstance(__uuidof(Recordset));
try
{
m_pRecordset->Open("SELECT * FROM users",
m_pConnection.GetInterfacePtr(),
adOpenDynamic,
adLockBatchOptimistic,
adCmdText);
}
catch(_com_error *e)
{

cout < <e->ErrorMessage() < <endl;
}


int IDa,olda;
char usernamea,sexa;
IDa=11;
olda=12;
usernamea='j';
sexa='M';
_variant_t RecordsAffected;


_CommandPtr m_pCommand;
_variant_t vNULL;
vNULL.vt = VT_ERROR;
vNULL.scode = DISP_E_PARAMNOTFOUND;


m_pCommand.CreateInstance ("ADODB.Command");
m_pCommand->ActiveConnection =m_pConnection;
m_pCommand->CommandText = "(_bstr_t)strSQL";
m_pCommand->CommandText ="SELECT*FROM users";

m_pCommand->CommandText ="Insert INTO users(ID,username,old,sex)VALUES('"+IDa+"',1,1,1)";
m_pCommand->Execute (&vNULL,&vNULL,adCmdText);
if(m_pConnection->State)
m_pConnection->Close();
m_pConnection= NULL;
return 0;
}


出现错误:error C2110: cannot add two pointers
求高手指教
...全文
57 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
LPR_Pro 2009-08-19
  • 打赏
  • 举报
回复
CString strQL;
strSQL.Format("insert into users(id,username,old,sex) values('%d',1,1,1)",IDa);
m_pCommand->CommandText = strSQL;
或者
m_pCommand->CommandText = (LPSTR) strSQL.GetBuffer();
flyoxs 2009-08-19
  • 打赏
  • 举报
回复

CString strSql;
strSql.Format("insert into users(id,username,old,sex) values('%d',1,1,1)",IDa);
shakeyou123 2009-08-19
  • 打赏
  • 举报
回复
定义一个cstring变量,cstring可以进行+的,把你的sql语句放在cstring 里就OK了
见习学术士 2009-08-18
  • 打赏
  • 举报
回复
LZ可以定义一个变量
CString strSql;
然后把SQL语句格式化到strSql就好了。
strSql.Format("insert into users(id,username,old,sex) values('%s',1,1,1)",IDa);
Conry 2009-08-18
  • 打赏
  • 举报
回复
char sql[512];

sprintf(sql,"Insert INTO users(ID,username,old,sex)VALUES(' %s ',1,1,1",IDa);

m_pCommand->CommandText =sql;//不清楚CommandText什么类型,这里只是示意

mxgd123 2009-08-18
  • 打赏
  • 举报
回复
变量的引用啊。。。其实我是新手,不太懂。。。现在我要把指点的变量数据,存进数据库,但是一引用变量就有问题,不知道为什么
liuchaotao 2009-08-18
  • 打赏
  • 举报
回复
m_pCommand->CommandText ="Insert INTO users(ID,username,old,sex)VALUES('"+IDa+"',1,1,1)";
两个字符串怎么相加?
LZ大概是从VB转过来的吧?

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧