Я делал так.
В моем примере хранимая процедура принимает один параметр - дату
PHP код:
CCADOConnection cn;
COM comCN;
str serverName = "myServer";
str baseName = "myDatabase";
str userId = "sa";
str userPassword = "1";
;
cn = new CCADOConnection();
cn.open(
"Provider=SQLOLEDB;"+
"Data Source=" + serverName + ";" +
"Initial Catalog=" + baseName + ";" +
"uid=" + userId + ";" +
"pwd=" + userPassword);
comCN = cn.connection();
comCN.Execute("set dateformat dmy exec myStoredProcedure '" + date2str(systemDateGet(),123,2,2,2,2,2) + "'");
Я правда не получал назад значение из параметра. Для этого надо использовать COM-объект ADO::Command