Re: [fpc-pascal] fcl-db: oracle SP

2008-04-08 Thread Bee
So, the thing we should fix is to make sqlDB supports Oracle's default SP/SF and get the best performance out of it. ;) http://bugs.freepascal.org/view.php?id=7 -Bee- has Bee.ography at: http://beeography.wordpress.com ___ fpc-pascal maillist -

Re: [fpc-pascal] fcl-db: oracle SP

2008-04-08 Thread Bee
Below is a simple Oracle sample : Thanks, your advice is indeed working using TOracleConnection and TSQLQuery. But, I got performance overhead using this trick. Pipelined function took 16 ms while default SF/SP for same result took less than 1 ms. So, the thing we should fix is to make sqlD

Re: [fpc-pascal] fcl-db: oracle SP

2008-04-07 Thread Inoussa OUEDRAOGO
2008/4/7, Bee <[EMAIL PROTECTED]>: > I'm new to Oracle. > > > > For a pipelined function, the syntax is : select * from table( sf() ) > > The other syntax ( 'select sf from dual' ) is for simple function , > > which returns single value. > > > > What's "pipelined function"? "select * from table(s

Re: [fpc-pascal] fcl-db: oracle SP

2008-04-07 Thread Bee
I'm new to Oracle. For a pipelined function, the syntax is : select * from table( sf() ) The other syntax ( 'select sf from dual' ) is for simple function , which returns single value. What's "pipelined function"? "select * from table(sf())" seems to requires a table. Does an SF belong to a

Re: [fpc-pascal] fcl-db: oracle SP

2008-04-07 Thread Inoussa OUEDRAOGO
> BTW... 'select sf from dual' despite the syntax very common is still not > working, raising an unhandled AV. I think it's more than just syntax or > parsing problem. :( For a pipelined function, the syntax is : select * from table( sf() ) The other syntax ( 'select sf from dual' ) is for simpl

Re: [fpc-pascal] fcl-db: oracle SP

2008-04-07 Thread Bee
override TSQLConnection.StrToStatementType in TOracleCOnnection, and add it there. BTW... 'select sf from dual' despite the syntax very common is still not working, raising an unhandled AV. I think it's more than just syntax or parsing problem. :( -Bee- has Bee.ography at: http://beeography

Re: [fpc-pascal] fcl-db: oracle SP

2008-04-07 Thread Bee
override TSQLConnection.StrToStatementType in TOracleCOnnection, and add it there. I added this to oracleconnection.pp unit function TOracleConnection.StrToStatementType(s : string) : TStatementType; begin S:=Lowercase(s); if s = 'call' then exit(stSelect); result := inherited StrToStatem

Re: [fpc-pascal] fcl-db: oracle SP

2008-04-07 Thread Bee
No, because you would break other connection types. As I said, it's just for testing purpose and I don't use other connection type. But as far as I understand, it indeed doesn't work since stExecProcedure is never checked anyway. :( -Bee- has Bee.ography at: http://beeography.wordpress.com

Re: [fpc-pascal] fcl-db: oracle SP

2008-04-07 Thread Michael Van Canneyt
On Mon, 7 Apr 2008, Bee wrote: > > override TSQLConnection.StrToStatementType in TOracleCOnnection, and add it > > there. > > If I simply replace 'execute' with 'call' of StatementTokens constant within > sqldb unit, then recompile FPC and Lazarus, would it work? No, because you would break ot

Re: [fpc-pascal] fcl-db: oracle SP

2008-04-07 Thread Bee
override TSQLConnection.StrToStatementType in TOracleCOnnection, and add it there. If I simply replace 'execute' with 'call' of StatementTokens constant within sqldb unit, then recompile FPC and Lazarus, would it work? It's just for testing to make sure it works before going further. -Bee- h

Re: [fpc-pascal] fcl-db: oracle SP

2008-04-07 Thread Michael Van Canneyt
On Mon, 7 Apr 2008, Bee wrote: > > That sqldb doesn't return data from a stored procedure is probably > > because it only tries to fetch data if the query starts with 'select' or > > 'show'. I'll have to add 'call' to that list for Oracle and do some > > tests. > > Where can I add 'call' for Or

Re: [fpc-pascal] fcl-db: oracle SP

2008-04-07 Thread Bee
That sqldb doesn't return data from a stored procedure is probably because it only tries to fetch data if the query starts with 'select' or 'show'. I'll have to add 'call' to that list for Oracle and do some tests. Where can I add 'call' for Oracle? TIA. -Bee- has Bee.ography at: http://beeogr

Re: [fpc-pascal] fcl-db: oracle SP

2008-04-04 Thread Bee
For SF, Oracle returns the output as row. To call SF, I'm using "call sf_name from dual". But, I found the output of SF is not "compatible" with TDataSource, and it raises an AV too. Sorry, my mistake. I mean "select sf_name from dual". -Bee- has Bee.ography at: http://beeography.wordpress.co

Re: [fpc-pascal] fcl-db: oracle SP

2008-04-04 Thread Bee
Wow, so there is actually someone using the oracle-connection... I thought I only made it for pr-purposes. ;) This is my first time experience with Oracle using FPC. I'm now using FPC 2.2.1 and Lazarus 9.24.1. :-D Btw: fcl-db contains all the TDataset-based components. Also TDataset itself i

Re: [fpc-pascal] fcl-db: oracle SP

2008-04-04 Thread Joost van der Sluis
Op vrijdag 04-04-2008 om 17:19 uur [tijdzone +0700], schreef Bee: > Hi all, > > Using fcl-db aka sqldb, how to call oracle's stored procedure through > toracleconnection? So far, google can't help me much. :( Or is there a > special component to handle stored procedure as in Delphi? TIA. Wow, s

Re: [fpc-pascal] fcl-db: oracle SP

2008-04-04 Thread Bee
Untested: If your stored procedure returns a recordset simply do: query.SQL.Text := 'select * from your_stored_sp'; query.Open; If the SP does not returns a resultset do: query.SQL.Text := 'execute your_stored_sp(''param1'', ''param2'')'; query.ExecSql; That's what comm

Re: [fpc-pascal] fcl-db: oracle SP

2008-04-04 Thread Leonardo M. Ram�
> > Using fcl-db aka sqldb, how to call oracle's stored procedure through > > toracleconnection? So far, google can't help me much. :( Or is there a > > special component to handle stored procedure as in Delphi? TIA. Untested: If your stored procedure returns a recordset simply do: query

Re: [fpc-pascal] fcl-db: oracle SP

2008-04-04 Thread Bee
Using fcl-db aka sqldb, how to call oracle's stored procedure through toracleconnection? So far, google can't help me much. :( Or is there a special component to handle stored procedure as in Delphi? TIA. I'm using Oracle 10g, FPC 2.2.1, on Ubuntu 386. -Bee- has Bee.ography at: http://beeogra

[fpc-pascal] fcl-db: oracle SP

2008-04-04 Thread Bee
Hi all, Using fcl-db aka sqldb, how to call oracle's stored procedure through toracleconnection? So far, google can't help me much. :( Or is there a special component to handle stored procedure as in Delphi? TIA. -Bee- has Bee.ography at: http://beeography.wordpress.com _