在vc6.0中如何执行,
EXEC master..xp_cmdshell 'bcp DataRecordDB.dbo.pp out C:\Temp.xls -c -q -S"violet-PC" -U"sa" -P"123456"';  这句SQL命令
从sqlserver数据库导出表到excel中,我试过创建_CommandPtr和_ConnectionPtr的Execute方法去执行,不报错,但是也得不到结果。
望各位高手帮帮忙,小女子在这里先谢过了^_^

解决方案 »

  1.   

    谢谢3楼的大哥,看了你的源码很受启发,问题已经解决了,结合你的代码解决了
        _CommandPtr cmd;
        CString exSQL="EXEC master..xp_cmdshell 'bcp DataRecordDB.dbo.";
        exSQL+=exData;
        exSQL+=" ";
        exSQL+="out C:\\Temp.xls -c -q -S\"server\" -U\"sa\" -P\"123456\"'";
    cmd.CreateInstance(__uuidof(Command));
    cmd->PutActiveConnection(pConn.GetInterfacePtr());
    cmd->PutCommandText(_bstr_t(exSQL));
    _variant_t varRecordsAffected;
    try
          {
                    cmd->Execute(&varRecordsAffected, NULL, adCmdText);
    if (varRecordsAffected.vt != VT_NULL)
    {
         cout<<"导出Excel成功!"<<endl;
    }
    }
    catch(_com_error e)
    {
    pConn->RollbackTrans ();
                                   CATCH_ERROR;
    cout<<"导出Excel失败!"<<endl;
    }