Здравствуйте sergey, Вы писали:
S>Здравствуйте, уважаемые !
S>Если кто понимает, что за беда, расскажите неразумным !
S>Есть примерно такой текст:
S> _ConnectionPtr conn
S> CString open_str;
S> open_str.Format("Provider=SQLOLEDB;"
S> "Server=%s;"
S> "Database=%s;"
S> "uid=%s; pwd=%s;",
S> dbserver,
S> dbname,
S> dbuser,
S> dbpass);
S> if (FAILED(conn->Open(_bstr_t(open_str),
S> _bstr_t(dbuser),
S> _bstr_t(dbpass), 0)))
S> return BSTR_FALSE;
Второй и третий параметры можно не указывать (т.е. NULL), последний должен быть -1
S> CString sql_cmd = "sp_my_procedure";
S>1) _RecordsetPtr rs = conn->Execute(_bstr_t(sql_cmd), NULL, adOptionUnspecified);
S> FieldsPtr flds = rs->Fields;
S>
S> if (!rs->ADOEOF)
S>2) rs->MoveFirst();
Вызов хранимой процедуры осуществляется по другому, с помощью объекта Command:
сom->CommandType = adCmdStoredProc;
com->CommandText = L"sp_my_proc";
com->ActiveConnection = conn;
com->Execute();