• SQL Server 2008 R2——VC++ ADO 操作 重复利用_CommandPtr


    ==================================声明==================================

    本文原创,转载在正文中显要的注明作者和出处,并保证文章的完整性。

    未经作者同意请勿修改(包括本声明),保留法律追究的权利。

    未经作者同意请勿用于出版、印刷或学术引用。

    本文不定期修正完善,为保证内容正确,建议移步原文处阅读。

    本文链接:http://www.cnblogs.com/wlsandwho/p/4367798.html

    =======================================================================

    同一个_CommandPtr执行不同参数的存储过程

    按照手册(见本系列参考资料)上说的:

    Delete 方法(ADO Parameters 集合)
          
    
    从 Parameters 集合中删除对象。
    
    语法
    
    Parameters.Delete Index
    
    参数
    
    Index   String 值,包含要删除的对象的名称,或者对象在集合中的序号位置(索引)。
    
    说明
    
    使用集合的 Delete 方法可删除此集合中的一个对象。此方法只能用在 Command 对象的 Parameters 集合上。在调用 Delete 方法时必须使用 Parameter 对象的 Name 属性或其集合索引——对象变量是无效参数。

    我尝试了下

     1 gpParam1=gpCmd->CreateParameter(TEXT("ID"),adInteger,adParamInput,sizeof(int));
     2 gpParam1->Value=_variant_t(6);
     3 gpCmd->Parameters->Append(gpParam1);
     4 
     5 gpCmd->Execute(NULL,NULL,adCmdStoredProc);//执行只有1个参数的存储过程
     6 
     7 ...
     8 
     9 gpCmd->Parameters->Delete(_variant_t(TEXT("ID")));
    10 gpCmd->CommandText=TEXT("proc_heheda");//不带参数的存储过程
    11 
    12 gpCmd->Execute(NULL,NULL,adCmdStoredProc);

    成功。

    =======================================================================

    但是,我总感觉还是用同一个_ConnectionPtr配合不同的_CommandPtr用起来方便点呢?

    毕竟每次删除参数都很麻烦。

  • 相关阅读:
    正则表达式入门(3)
    正则表达式入门(2)
    正则表达式入门
    函数的参数传递
    python常用库之random
    插入排序与归并排序
    浅拷贝与深拷贝
    装饰器学习小程序
    Python的“is”与“==”
    Oracle中断中止exp/imp和expdp/impdp数据库导入导出
  • 原文地址:https://www.cnblogs.com/wlsandwho/p/4367798.html
Copyright © 2020-2023  润新知