× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Are we sure that this really is an identity column, or is it just a
field in the table CALLED identity. Perhaps this field is populated by
a trigger, instead of being a real identity column. Perhaps the client
application is trying to retrieve the identity value just generated, but
are doing this by reading in the record, and peeling out the value in
the identity column (as identified in the SQL catalog view). This would
be the wrong way to do this, I think. Search for IDENTITY_VAL_LOCAL
function for this/.

-Eric DeLong

-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Alan Campin
Sent: Tuesday, February 01, 2011 2:00 PM
To: RPG programming on the IBM i / System i
Subject: Re: iSeries SQL and identity columns

I am not sure DB2 is generating it. It is probably the driver.

As far as getting the next, DB2 stores it in the database and it caches
a
number of them. Part of the parameters for creating the identity field
is
how many to cache. So it doesn't query, it just goes out and gets the
next
one out of the cache.

On Tue, Feb 1, 2011 at 11:52 AM, <terry_bullard@xxxxxxxxxxxx> wrote:

Thanks Alan - So if the system is generating it - would I be correct
in
saying that there is an sql insert statement that was run and the
system
needs to generate a unique key value for this identity column so DB2
takes
over to get the highest value so it can then insert the new record?

I guess the other way of asking is this normal activity? I.e. - if I
had
NO tables that where created with an identity key column - will DB2
still
perform this type of check before it does an insert and would I still
see
these same types of sql statements being generated. I'm really trying
to
determine if I need to chase this from a possible performance issue
standpoint.

Thanks in advance,



Terry Bullard - Applications Programmer Analyst


"Contains Confidential and/or Proprietary Information.
May Not Be Copied or Disseminated Without Express Consent of The
Goodyear
Tire & Rubber Company."



From: Alan Campin <alan0307d@xxxxxxxxx>
To: "RPG programming on the IBM i / System i"
<rpg400-l@xxxxxxxxxxxx>
Date: 02/01/2011 01:41 PM
Subject: Re: iSeries SQL and identity columns
Sent by: rpg400-l-bounces@xxxxxxxxxxxx



Yes, it is system generated. It looks like the system is querying to
determine if the table has an identity key. You should be able to run
the
same query but you could also use Ops Nav and generate SQL for all
your
tables and just query for identity key.

On Tue, Feb 1, 2011 at 11:16 AM, <terry_bullard@xxxxxxxxxxxx> wrote:

Hello All,

Have been having some performance issues with web pages hitting our
iSeries. Set up SQL Exit program to be able to capture/log odbc sql
statements. Looking in my log file - the overwhelming log entries
have
the following sql statement.

SELECT identity_generation FROM QSYS2/SYSCOLUMNS WHERE
identity_generation
is not null AND column_name = ? AND table_name = ? AND table_schema
= ?

I have never seen a statement use the identity_generation field.
From
what I can tell from IBM's website - this is a col you can add when
creating a sql table and is used to support a type of "auto
increment"
key
value?

So - a couple of questions? Is there a way (perhaps with Ops
Navigator)
to find a list of all tables that have this identity_generation
column
so
I can backtrack to see what web pages are being called?

Also - is this a system generated statement? I ask because the
developers
who have written most of our web pages are telling me they don't
recognize
this either???

Know this is not much to go on but it's what I have at the time.
Any
thoughts would be greatly appreciated.....

Thanks



Terry Bullard - Applications Programmer Analyst


"Contains Confidential and/or Proprietary Information.
May Not Be Copied or Disseminated Without Express Consent of The
Goodyear
Tire & Rubber Company."
--
This is the RPG programming on the IBM i / System i (RPG400-L)
mailing
list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.


--
This is the RPG programming on the IBM i / System i (RPG400-L) mailing
list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.



--
This is the RPG programming on the IBM i / System i (RPG400-L) mailing
list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.