Re :Re: Calling ExecuteSQL from c++ hangs

From: <fuckingstupid_at_my-deja.com>
Date: Tue, 12 Dec 2000 19:53:05 GMT
Message-ID: <915vmt$v3p$1_at_nnrp1.deja.com>


I don't see a respond button so this might come out as a new post.

The procedure it calls is shown below, that works I tested that in TOAD and have actually called this using ADO before but I was changing things over to using the Oracle classes.

Like I said it just hangs forever. Thanks for any input

procedure update_status(UserName in varchar2, CompCode in number, ActCode in number, Status in number, ReturnCode out number) is
numrow number default 0;
begin

    select count(*) into numrow from ProjectStatus      where UserId = UserName and componentcode = CompCode and actioncode = ActCode;

 ReturnCode := numrow;

 if (numrow = 0) then

     insert into ProjectStatus (UserId, componentcode, actioncode, statuscode)
  values (UserName, CompCode, ActCode, Status);  elsif (numrow = 1) then

     update ProjectStatus set statuscode = Status where UserId = UserName and
  componentcode = CompCode and actioncode = ActCode;  else

     ReturnCode := -1;
 end if;
end;

Using Oracle's ODatabase classes , I'm doing this

ODatabase ODb;
oresult or = ODb.Open
("mydatabase", "myid", "mypassword");

ODb.GetParameters().Add("Name", "Moto",
OPARAMETER_INVAR, OTYPE_VARCHAR2); ODb.GetParameters().Add("id", 101,
PARAMETER_INVAR, OTYPE_NUMBER); ODb.GetParameters().Add("Action", 55,
OPARAMETER_INVAR, OTYPE_NUMBER); ODb.GetParameters().Add("Status", 55,
OPARAMETER_INVAR, OTYPE_NUMBER); ODb.GetParameters().Add("ReturnCode", 0, OPARAMETER_OUTVAR, OTYPE_NUMBER); or = ODb.ExecuteSQL("Begin myproc.Update_Status (:Name, :id, :Action, :Status, :ReturnCode); end;");

ODb.Close();
OShutdown();
}

and it makes the execute call and never comes home, ever. Not sure what to do now

Sent via Deja.com
http://www.deja.com/ Received on Tue Dec 12 2000 - 20:53:05 CET

Original text of this message