打印本文 打印本文 关闭窗口 关闭窗口
ADO访问Oracle结果集的心得
作者:武汉SEO闵涛  文章来源:敏韬网  点击数5579  更新时间:2009/4/23 10:36:08  文章录入:mintao  责任编辑:mintao
    VARIANT vtParam1;
    VARIANT vtParam3;

    try
    {
        //Open a Connection.
        TESTHR(pConnection.CreateInstance(__uuidof(Connection)));
        hr = pConnection->Open(strCnn,"","",adConnectUnspecified);
        pConnection->CursorLocation = adUseClient;

        //Open Command Object with one Parameter
        TESTHR(pCmd.CreateInstance(__uuidof(Command)));
        pCmd->CommandText = "PK_ConsolManager_LoginCheck.MyProcedure";
        pCmd->CommandType = adCmdStoredProc;

        //Get parameter value and append parameter
        printf("输入: ");
        scanf("%d",&intParam1);

        //Define Integer/variant.
        vtParam1.vt = VT_I2;
        vtParam1.iVal = intParam1;
        pPrmParam1 = pCmd->CreateParameter("Param1",adInteger,adParamInput,sizeof(int),vtParam1);
        pCmd->Parameters->Append(pPrmParam1);
        pPrmParam1->Value  = vtParam1;
        

        vtParam3.vt = VT_I2;
        pPrmParam3 = pCmd->CreateParameter("Param3", adInteger, adParamOutput, sizeof(int), vtParam3);
        pCmd->Parameters->Append(pPrmParam3);
       
              
        //Create Recordset by executing the command

        //printf("%d", pRs->GetRecordCount());
        pCmd->ActiveConnection = pConnection;
        pRs = pCmd->Execute(NULL,NULL,adCmdStoredProc);

        _bstr_t  bstrLoginName;
        bstrLoginName = pRs->Fields->Item["LoginName"]->Value;
        printf("登录名: %s \n", (LPCSTR) bstrLoginName);
        
        vtParam3 = pCmd->Parameters->Item["Param3"]->Value;
        printf("%d", vtParam3.intVal);


    }
    catch(_com_error &e)
    {
        _bstr_t bstrSource(e.Source());
        _bstr_t bstrDescription(e.Description());

        PrintProviderError(pConnection);

        printf("\n 源 : %s \n&n

上一页  [1] [2] [3] [4] [5]  下一页

打印本文 打印本文 关闭窗口 关闭窗口