logo       

Using stored procedures: msg#00047

lang.perl.modules.dbi.rose-db-object

Subject: Using stored procedures

Hi,

In Postgresql I'm having a stored procedure, which is returning agregate data,
based on passed parameters. In front on that is a Rose::DB::Object subclass
and at each invocation of a 'select' method I'm changing the table name to
include the parameters, like:

$meta->table("stored_proc('a', NULL, 12)");

In RDBO-0.73 / RDB-0.70 all is working fine, but with RDBO-0.731 / RDB-0.71
Postgresql is complaining because table name is quoted in the generated sql:

get_objects() - DBD::Pg::st execute failed: ERROR:
relation "stored_proc('a', NULL, 12)" does not exist

The manager class is generating something like:

SELECT COUNT(*) FROM "stored_proc('a', NULL, 12)"

What is the normal behavior for quoting the table name: pre- RDBO-0.731 /
RDB-0.71 or that of actual versions ? Or the behavior can be controlled by a
switch ? Also, are other corelated effects if I'm changing the table name
after initialization ?


What are the possibilities / recommended approaches of using RDBO/RDB for
reporting purposes ? I want to use views, stored procedures and dimensional
modeling in db (star schemas). These implies read-only queries (only
selects), absence of primary keys, agregate functions (using 'group by'
and 'having' clauses), huge number of columns or columns defined dinamically.

Thank you,
Lucian Dragus


<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise