db-ojb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Vadim Gritsenko (JIRA)" <j...@apache.org>
Subject [jira] Commented: (OJB-16) Support stored procedures in select by pk statement
Date Wed, 13 Apr 2005 17:46:16 GMT
     [ http://issues.apache.org/jira/browse/OJB-16?page=comments#action_62755 ]
     
Vadim Gritsenko commented on OJB-16:
------------------------------------

>> by-pk can't be used if you retrieve collection - you have to query
>> by non pk fields, like B.aId from example above. That's why by-fk
>> was introduced. If you meant by-fk, then yes, I agree with you. If
>> no collection specific SP is specified, then by-fk can be used.
>
>Sure, but I take it from this, that by-pk is used to retrieve a reference ?

Yes :-)
Internally (in QueryReferenceBroker), retrieve-a-reference is converted into QueryByIdentity,
which triggers select-by-pk.


> Ok, anyway, how about calling them select-by-pk-procedure and
> select-by-fk-procedure then (for better readability) ?

No problem at all.


> I can probably apply the patch at the weekend.

That would be great!


> Btw, could you perhaps create some unit tests (oracle specific is ok,
> I can adapt them to PostgreSQL) ?

Ok, I'll take a look at existing tests. I never wrote OJB tests yet...

Vadim


> Support stored procedures in select by pk statement
> ---------------------------------------------------
>
>          Key: OJB-16
>          URL: http://issues.apache.org/jira/browse/OJB-16
>      Project: OJB
>         Type: New Feature
>   Components: PB-API
>     Versions: 1.0.x CVS
>     Reporter: Vadim Gritsenko
>     Assignee: Thomas Dudziak
>  Attachments: QueryByCriteriaBase.java, QueryByFKCriteria.java, SelectByFKProcedureDescriptor.java,
SelectByPKProcedureDescriptor.java, SqlProcedureFKStatement.java, db-ojb-patch.diff, db-ojb-selectbypk.diff,
xdoclet.diff
>
> This patch adds support for retrieving objects by primary keys through call to stored
procedure instead of using select statement.
> To activate the feature, add xdoclet tag to the class:
> /**
>  * @ojb.class table="MYBEAN"
>  * @ojb.selectbypk-procedure name="FIND_MYBEAN_BYID"
>  */
> public class MyBean {
>     /**
>      * @ojb.field primarykey="true"
>      */
>     Integer id;
> }
> And then, create stored procedure:
> CREATE OR REPLACE PACKAGE TYPES AS
>   TYPE CURSORTYPE IS REF CURSOR;
> END TYPES;
> /
> CREATE OR REPLACE FUNCTION FIND_MYBEAN_BYID (ANID IN MYBEAN.ID%TYPE)
> RETURN TYPES.CURSORTYPE AS
> RESULT TYPES.CURSORTYPE;
> BEGIN
>   OPEN RESULT FOR SELECT * FROM MYBEAN WHERE ID = ANID;
>   RETURN RESULT;
> END;
> /
> Patch is made against OJB_1_0_RELEASE branch.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-dev-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-dev-help@db.apache.org


Mime
View raw message