You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@turbine.apache.org by kidong <Ki...@public.uni-hamburg.de> on 2001/04/09 00:23:04 UTC

problem with criteria sql

hello,

I would like to implement such the sql below with criteria abstraction sql:

  select * from issue where issue_id = 1 and belongto = 'turbine';

I have tried it with criteria as following:

       String issue_id = data.getParameters().getString("issue_id", "");
       String belongto = ((Member)data.getSession().getAttribute( BugTrackerKeys.CURRENT_USER )).getBelongTo();
       Criteria crit = new Criteria();
       Criteria.Criterion c = crit.getNewCriterion( BaseIssuePeer.TABLE_NAME, BaseIssuePeer.BELONGTO, belongto, crit.EQUAL );
       Criteria.Criterion c2 = crit.getNewCriterion( BaseIssuePeer.TABLE_NAME, BaseIssuePeer.ISSUE_ID, issue_id, crit.EQUAL );
       c.and(c2);
       crit.add(c);
       Issue issue = (Issue) BaseIssuePeer.doSelect( crit, GetDBConnection.getDBConnection() ).elementAt(0);

but it comes to wrong result which I have not expected.

does anybody know how to implement criteria for this issue?

thanks,

kidong


Re: problem with criteria sql

Posted by John McNally <jm...@collab.net>.
this criteria can be written as

Criteria criteria = new Criteria()
    .add(BaseIssuePeer.ISSUE_ID, 1)
    .add(BaseIssuePeer.BELONGTO, 'turbine');

And then I assume you have some reason (transaction?) to keep reference
to the connection, otherwise,

BaseIssuePeer.doSelect(crit) will also work.

john mcnally

> kidong wrote:
> 
> hello,
> 
> I would like to implement such the sql below with criteria abstraction
> sql:
> 
>   select * from issue where issue_id = 1 and belongto = 'turbine';
> 
> I have tried it with criteria as following:
> 
>        String issue_id = data.getParameters().getString("issue_id",
> "");
>        String belongto = ((Member)data.getSession().getAttribute(
> BugTrackerKeys.CURRENT_USER )).getBelongTo();
>        Criteria crit = new Criteria();
>        Criteria.Criterion c = crit.getNewCriterion(
> BaseIssuePeer.TABLE_NAME, BaseIssuePeer.BELONGTO, belongto, crit.EQUAL
> );
>        Criteria.Criterion c2 = crit.getNewCriterion(
> BaseIssuePeer.TABLE_NAME, BaseIssuePeer.ISSUE_ID, issue_id, crit.EQUAL
> );
>        c.and(c2);
>        crit.add(c);
>        Issue issue = (Issue) BaseIssuePeer.doSelect( crit,
> GetDBConnection.getDBConnection() ).elementAt(0);
> 
> but it comes to wrong result which I have not expected.
> 
> does anybody know how to implement criteria for this issue?
> 
> thanks,
> 
> kidong
>

---------------------------------------------------------------------
To unsubscribe, e-mail: turbine-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: turbine-user-help@jakarta.apache.org


RE: problem with criteria sql

Posted by Age Mooy <am...@home.nl>.
Criteria crit = new Criteria();

crit.add(IssuePeer.BELONGTO, belongto);
crit.add(IssuePeer.ISSUE_ID, issue_id);

Vector results  = IssuePeer.doSelect(crit);

and if you really only want the first record:

Issue issue = (Issue) results.get(0);

Age

-----Original Message-----
From: kidong [mailto:Kidong.Lee@public.uni-hamburg.de]
Sent: Monday, April 09, 2001 00:23
To: turbine-user@jakarta.apache.org
Subject: problem with criteria sql


hello,

I would like to implement such the sql below with criteria abstraction sql:

  select * from issue where issue_id = 1 and belongto = 'turbine';

I have tried it with criteria as following:

       String issue_id = data.getParameters().getString("issue_id", "");
       String belongto = ((Member)data.getSession().getAttribute( BugTrackerKeys.CURRENT_USER )).getBelongTo();
       Criteria crit = new Criteria();
       Criteria.Criterion c = crit.getNewCriterion( BaseIssuePeer.TABLE_NAME, BaseIssuePeer.BELONGTO, belongto, crit.EQUAL );
       Criteria.Criterion c2 = crit.getNewCriterion( BaseIssuePeer.TABLE_NAME, BaseIssuePeer.ISSUE_ID, issue_id, crit.EQUAL );
       c.and(c2);
       crit.add(c);
       Issue issue = (Issue) BaseIssuePeer.doSelect( crit, GetDBConnection.getDBConnection() ).elementAt(0);

but it comes to wrong result which I have not expected.

does anybody know how to implement criteria for this issue?

thanks,

kidong

---------------------------------------------------------------------
To unsubscribe, e-mail: turbine-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: turbine-user-help@jakarta.apache.org