如何通过ole db调用带参数的存储过程(在线,解决就送100分)

ChinaThinker 2003-09-23 08:52:19
1.介绍使用ole db时调用存储过程的方法;
2.使用CCommand<CManualAccessor> rs,我有msdn的例子,但是总出错,希望做过的高手指点;
3.我是用{call store_proc_name('x','y')}
还是用exec store_proc_name varx=x,vary=y
...全文
35 10 打赏 收藏 举报
写回复
10 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
国洋建 2003-09-25
谢谢,大虾接分:
http://expert.csdn.net/Expert/topic/2297/2297863.xml?temp=3.539675E-02
  • 打赏
  • 举报
回复
DarkShow 2003-09-25
晕,原来已经解决了啊?我正说来回答呢。。。唉,可惜,可惜
  • 打赏
  • 举报
回复
国洋建 2003-09-24
大虾,我照您说的做了:
1,我写FAILED(mySet.Open())时,没有报错误
2,我在sql server中直接插入companyid没有问题
3,我把mySet.Insert() 改成mySet.Insert(1)时,编译没问题,出现运行时错误:
Debug Assertion Failed!

program:d:\oledb\debug\oledb.exe
file:d:\program files .... atl\include\atldbcli.h
line:823

expression:nAccessor<m_nAccessors

...
4,还有就是当我运行程序时速度奇慢无比,执行以上代码时也是很慢,数据库有记录数100万条,但用odbc连时很快
  • 打赏
  • 举报
回复
ChinaThinker 2003-09-24
对数据库应该事先建立起一个CDataSource,然后打开会话CSession m_DbSession,然后所有的表中通过m_DbSession来open,这样速度应该不慢.不要每打开一个表都打开一个会话.因此需要对wizzard产生的代码改写.把建立会话单独那出来在程序一开始建立.
  • 打赏
  • 举报
回复
ChinaThinker 2003-09-24
3.判断以下FAILED(mySet.Open()),看数据库连接是否成功.
  • 打赏
  • 举报
回复
ChinaThinker 2003-09-24
如果是用wizzard添加的数据,原则上把握以下两点:
1.如果数据库中对应的表的设计发生了变化(域的属性,或各字段的顺序),则模版中的绑定需要手工修改(除非你重新wizzard一遍);
2.当前表的某个字段是否和别的表有约束关系,有的话添加时的考虑当前添加的数据是否有效;
就你的代码而言,没什么错,不过可以按照我说的改改看看:
事先通常定义一个新加数据的数据结构(和当前表一致)
1.TCHAR类型用 strncpy(mySet.m_Partno,newData.m_Partno,length); (length的取值为你的表中字段长度)
2.mySet.Insert() 改成mySet.Insert(1) 看看.
  • 打赏
  • 举报
回复
skt01 2003-09-24
路过
  • 打赏
  • 举报
回复
国洋建 2003-09-23
大虾能否讲解一下用oledb如何添加数据,我写的数据添加老是不行
而且运行时速度太慢了,我使用wizard连的oledb,解决后我我给100分
以下是代码;
COLEDBSet mySet;
int companyId = 9;

mySet.Open();

mySet.ClearRecord();
mySet.m_CompanyId = companyId;
//mySet.m_Partno = NULL; //_T("TEST");

if ( FAILED( mySet.Insert() ) )
{
AfxMessageBox("Insert failed!",MB_ICONEXCLAMATION );
mySet.MoveFirst();
UpdateData(false);
}

mySet.Close();
  • 打赏
  • 举报
回复
gunyeah 2003-09-23
呵呵,,你是自己问,自己答了,牛阿,
  • 打赏
  • 举报
回复
ChinaThinker 2003-09-23
^_^
通过调试,总算解决了.可惜没人接分了,么办.那位兄弟和我交换点分.
  • 打赏
  • 举报
回复
相关推荐
发帖
数据库
加入

3968

社区成员

VC/MFC 数据库
社区管理员
  • 数据库
申请成为版主
帖子事件
创建了帖子
2003-09-23 08:52
社区公告
暂无公告