Hi Thomas,
I tried, but still throwing the same error.How to debug this
problem?But its is working fine to fetch all records.Please help, because i only
sujested to use OJB.My Project Manager given a time till tomorrow if it not work, he
will ask me do it Entity Bean(EJB).Reply me.
Thanks with regards
Dhamu
Thomas Mahler <[EMAIL PROTECTED]> wrote:Try to use
Integer bindVar = new Integer(3);
cheers,
Thomas
Dhamodharan P wrote:
> Dear all,
> Any one how to fetch a specific row in a oracle by using primary key.I tried using
>the following code:
> public static void main(String[] dhamu)
> {
> Implementation odmg = OJB.getInstance();
> Database db= odmg.newDatabase();
> java.util.Iterator iter=null;
> try
> {
> String bindVar="3";//my primary key
> file://open database
> db.open("repository.xml", Database.OPEN_READ_WRITE);
> // 1. open a transaction
> Transaction tx = odmg.newTransaction();
> tx.begin();
> // 2. get an OQLQuery object from the ODMG facade
> OQLQuery query = odmg.newOQLQuery();
> // 3. set the OQL select statement
> String oqlQuery="select specifyvalue from " + Product.class.getName()+" where id=$1";
> System.out.println(oqlQuery);
> query.create(oqlQuery);
> query.bind(bindVar);
> // 4. perform the query and store the result in a persistent Collection
> DList allDetails = (DList)query.execute();
> tx.commit();
> // 5. now iterate over the result to print each product
> iter = allDetails.iterator();
> while(iter.hasNext())
> {
> Product product=(Product)iter.next();
> System.out.println("Price = "+product.getName());
> System.out.println("Price = "+product.getPrice());
> System.out.println("Stock = "+product.getStock());
> }
>
> }
> catch (ODMGException ex)
> {
> ex.printStackTrace();
> }
> }
> I facing the error: [org.apache.ojb.broker.accesslayer.JdbcAccess] ERROR:
>SQLException during the execution of the query: ORA-01036: illegal variable
>name/number
> Thanks with regards
> Dhamu
>
>
>
> Dhamodharan P wrote:
> Hi Kennedy,
> For ORACLE Sequence:(no need to change anything repository_user.xml).Just generate
>sequence and a trigger as follows for your table:
> CREATE SEQUENCE
>
> START WITH 1
> INCREMENT BY 1
> NOMAXVALUE;
>
>
> CREATE TRIGGER
> BEFORE INSERT ON
> FOR EACH ROW
> BEGIN
> SELECT .NEXTVAL INTO :NEW. FROM DUAL;
> END;
> /
> For OJB AUTOINCREMENT:you need to set repository_user.xml as follows
>
> class="com.cit.ojb."
> table=">
> name=""
> column=""
> jdbc-type="INTEGER"
> primarykey="true"
> autoincrement="true"
> />
>
> - - - - - -
>
> - - - - -
>
> - --
>
> if it works just reply me.
>
> Regards
>
> Dhamu
>
>
>
> Ryan Kennedy wrote: For some reason I can't seem to get the Oracle sequence manager
>to work. I
> have the following in my OJB.properties:
>
>
> SequenceManagerClass=org.apache.ojb.broker.util.sequence.SequenceManagerOracl
> eImpl
>
> I have this in my repository_user.xml:
>
>
>
> I construct a new Job object and call broker.store(job); to persist it to the
> database. When I do that, I get the following exception:
>
> java.lang.Exception: sequence-name attribute is not defined in
> the class descriptor - Job
>
> It appears that it can't find my sequence-name attribute, but I have it there
> in my class descriptor. Any ideas?
>
> Ryan Kennedy
> Software Engineer
> Jel, Inc.
> web. www.jel.net
>
> --
> To unsubscribe, e-mail:
> For additional commands, e-mail:
>
>
>
>
> ---------------------------------
> Get a bigger mailbox -- choose a size that fits your needs.
> etch
>
>
>
> ---------------------------------
> Get a bigger mailbox -- choose a size that fits your needs.
>
--
To unsubscribe, e-mail:
For additional commands, e-mail:
---------------------------------
Get a bigger mailbox -- choose a size that fits your needs.