VC调用ACCESS存储过程

sunnyes2008 2012-08-30 04:46:29
PARAMETERS CardID Short, Tags Short, Recv_Data Text ( 255 ), Recv_Time Text ( 255 );
INSERT INTO rfdata ( CardID, Tags, Recv_Data, Recv_Time )
VALUES ([@CardID], [@Tags], [@Recv_Data], [@Recv_Time]);

上面是存储过程
下面是VC里设置的参数执行是会报错。
m_pCommand.CreateInstance("ADODB.Command"); //实例
m_pCommand->ActiveConnection = m_pConnection; //设置连接
m_pCommand->CommandText ="InsertData";

_ParameterPtr m_pParam_CardID;
m_pParam_CardID.CreateInstance("ADODB.Parameter");

_ParameterPtr m_pParam_Tags;
m_pParam_Tags.CreateInstance("ADODB.Parameter");

_ParameterPtr m_pParam_RecvData;
m_pParam_RecvData.CreateInstance("ADODB.Parameter");

_ParameterPtr m_pParam_RecvTime;
m_pParam_RecvTime.CreateInstance("ADODB.Parameter");

//设置参数
m_pParam_CardID = m_pCommand->CreateParameter("CardID",adInteger,adParamInput,4,(_variant_t)"01"); //给参数设备各属性
m_pCommand->Parameters->Append(m_pParam_CardID);

m_pParam_Tags = m_pCommand->CreateParameter("Tags",adInteger,adParamInput,4,(_variant_t)"01"); //设置参数的标签号
m_pCommand->Parameters->Append(m_pParam_Tags);

m_pParam_RecvData = m_pCommand->CreateParameter("Recv_Data",adVarChar,adParamInput,255,(_variant_t)"FFFFFFFFFFFFFF");
m_pCommand->Parameters->Append(m_pParam_RecvData);

m_pParam_RecvTime = m_pCommand->CreateParameter("Recv_Time",adVarChar,adParamInput,255,(_variant_t)"2012-08-09 08:08:08:798");
m_pCommand->Parameters->Append(m_pParam_RecvTime);

m_pCommand->Execute(NULL,NULL,adCmdStoredProc);

在最后一条执行时发生错误,数据库连接没问题。
...全文
132 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
zyq5945 2012-08-30
  • 打赏
  • 举报
回复
在VC里用CString拼下SQL插入记录就行了呗,干嘛弄这么麻烦。

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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