PaaS Partner Community

  • December 21, 2015

Why does DB-adapter return duplicate rows? by Jon Petter Hjulstad

Juergen Kress
PaaS Partner Adoption

clip_image002Here are some DB adapter tips regarding duplicate rows.

The DB Adapter has some nice features, but sometimes you can get fooled. One of my colleagues experiences this one day. The query returned the same row - just repeated many times.

The reason for this is because the primary key was not defined correctly.

The good thing is that the documentation describes this - and more: Oracle documentation

For tables where primary key is defined - this should not be a problem, but in cases where it is not defined or you are querying a view - you would need to specify a primary key yourself. A couple of relevant notes here:

  • If you do not provide a valid primary key, then the unique constraint is not guaranteed, and this could result in possible loss of messages at runtime. That is, rows with duplicate primary key values are likely to be lost.
  • You should ensure that you primary key is less than 100 bytes.
  • Oracle recommends that you use varchar instead of char for primary key columns

Read the complete article here.

SOA & BPM Partner Community

For regular information on Oracle SOA Suite become a member in the SOA & BPM Partner Community for registration please visit www.oracle.com/goto/emea/soa (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn image[7][2][2][2] Facebook clip_image002[8][4][2][2][2] Wiki

Join the discussion

Comments ( 1 )
  • Poojitha Friday, August 11, 2017

    I am facing this duplicate row issue , although I am using proper primary key. I have even tried using Singleton property.

    The SQL is not giving any duplicates, But the db adapter is populating duplicates.

    Can you give me any suggestion as soon as possible.
Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.