You've gotten the answer...

You might be able to generate the identity value yourself using a before
insert trigger to update the DB.

Lots of downsides to this, including the fact that there'd be no built in
way to let the program doing the write know what identity value was
generated.

Honestly, updating would be best. But I doubt a system a v5r1 could be
updated past v5r4 it it could even get that far.

AFAIK, there's no way to get v5r4 at this point unless you already have a
license for it.

Charles

On Fri, Oct 16, 2015 at 4:51 PM, James Rich <james@xxxxxxxxxxx> wrote:

Today I tried to create a table only to discover that the SQL statement
doesn't appear to be supported. I checked the release and discovered this
particular system is at V5R1, much to my dismay. Upgrading to a new IBM i
might be a possibility, but before looking further into that the customer
wants to explore what the other possibilities are. Here is the statement
we're trying to run:

create table qs36f/PDFRPTP
(REPORT FOR RPID bigint generated always as identity(start with 1,
increment by 1, no order, no cycle, no minvalue, no maxvalue, cache 20),
DATA FOR RPDATA blob(2G),
REPORTDATE FOR RPDATE timestamp,
NAME FOR RPNAME varchar(128),
TYPE FOR RPTYPE char(4),
NEWREPORT FOR RPNEW char(1),
USERNAME FOR RPUSER varchar(128),
DELETED FOR RPDELETED char(1) not null,
ARCHIVED FOR RPARCHIVE char(1) not null,
PRIMARY KEY (RPID))

Running the statement results in:

Token GENERATED was not valid. Valid tokens: NO FOR NOT FILE WITH CCSID
CHECK UNIQUE DEFAULT PRIMARY.

Two options occur to me:

1. Is there a different syntax on V5R1 to accomplish the same thing?
2. Is there a PTF for V5R1 that gives the GENERATED capability? How would
I find out? Is it even still available?

James Rich

if you want to understand why that is, there are many good books on
the design of operating systems. please pass them along to redmond
when you're done reading them :)
- Paul Davis on ardour-dev
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/midrange-l.



This thread ...

Follow-Ups:
Replies:

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

This mailing list archive is Copyright 1997-2020 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].