VC调用SQL Server存储过程的通用方法介绍

[IT科技] 时间:2025-11-05 04:17:29 来源:益强IT技术网 作者:应用开发 点击:80次
VC调用SQL Server存储过程的通用方法介绍
复制HRESULT hr = S_OK;   // Define ADO object pointers.   // Initialize pointers on define.   // These are in the ADODB:: namespace.   _RecordsetPtr pRstByRoyalty = NULL;   _RecordsetPtr pRstAuthors = NULL;    _CommandPtr pcmdByRoyalty = NULL;   _ParameterPtr pprmByRoyalty = NULL;   _ConnectionPtr pConnection = NULL;   _bstr_t strCnn("Provider=sqloledb;Data Source=srv;"   "Initial Catalog=Pubs;User Id=sa;Password=;");   _bstr_t strMessage,调用 strAuthorID;   int intRoyalty;   VARIANT vtRoyalty;   try   {   //Open a Connection.   TESTHR(pConnection.CreateInstance(__uuidof(Connection)));   hr = pConnection->Open(strCnn,"","",NULL);   pConnection->CursorLocation = adUseClient;   //Open Command Object with one Parameter   TESTHR(pcmdByRoyalty.CreateInstance(__uuidof(Command)));   pcmdByRoyalty->CommandText = "byroyalty";   pcmdByRoyalty->CommandType = adCmdStoredProc;   //Define Integer/variant.   vtRoyalty.vt = VT_I2;   vtRoyalty.iVal = intRoyalty;   pprmByRoyalty = pcmdByRoyalty->CreateParameter(   "percentage",adInteger,adParamInput,sizeof(int),vtRoyalty);   pcmdByRoyalty->Parameters->Append(pprmByRoyalty);   pprmByRoyalty->Value = vtRoyalty;   //Create Recordset by executing the command   pcmdByRoyalty->ActiveConnection = pConnection;   pRstByRoyalty = pcmdByRoyalty->Execute(   NULL,NULL,adCmdStoredProc);   //执行结果的处理,云服务器提供商存储过程省略...   pRstByRoyalty->Close();   pRstAuthors->Close();   pConnection->Close();    }   catch(_com_error &e)   {   //意外处理...   }   }  1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.31.32.33.34.35.36.37.38.39.40.41.42.43.44.45.企商汇

(责任编辑:IT科技)

    相关内容
    精彩推荐
    热门点击
    友情链接