[ http://issues.apache.org/jira/browse/DERBY-353?page=all ]
Kathey Marsden updated DERBY-353: --------------------------------- Fix Version/s: 10.1.3.2 Fixed in 10.1.3.2 Date: Thu Aug 10 06:43:20 2006 New Revision: 430381 URL: http://svn.apache.org/viewvc?rev=430381&view=rev Log: DERBY-353 It is desirable to have IDENTITY_VAL_LOCAL() function return last recent user specified value or system generated value for BY DEFAULT identity columns. Merged from trunk 267331, contributed by V.Narayanan DERBY-1554 IDENTITY_VAL_LOCAL() returned value is modified incorrectly by a multi-row INSERT statement. Merged from trunk 429425, contributed by Yip Ng > It is desirable to have IDENTITY_VAL_LOCAL() function return last recent user > specified value or system generated value for BY DEFAULT identity columns. > -------------------------------------------------------------------------------------------------------------------------------------------------------- > > Key: DERBY-353 > URL: http://issues.apache.org/jira/browse/DERBY-353 > Project: Derby > Issue Type: Bug > Components: SQL > Affects Versions: 10.1.1.0 > Environment: Generic > Reporter: Satheesh Bandaram > Assigned To: V.Narayanan > Fix For: 10.2.0.0, 10.1.3.2 > > Attachments: patch353.diff > > > Derby was recently enhanced to support BY DEFAULT identity column. While the > behavior of this feature is not documented yet, I think, it is desirable for > IDENTITY_VAL_LOCAL() function, that is used to retrieve last single statement > insert value for identity column, to return user specified value for the > default column. > For GENERATED ALWAYS identity columns, this issue doesn't apply, since users > can't provide a value. But for GENERATED BY DEFAULT identity columns, users > can optionally specify a value. IDENTITY_VAL_LOCAL() function should return > this value. Derby currently doesn't support this behavior. > ij> create table tauto ( i int generated by default as identity, j int, k > int); > 0 rows inserted/updated/deleted > ij> insert into tauto (j,k) values (1,1); > 1 row inserted/updated/deleted > ij> values identity_val_local(); > 1 > ------------------------------- > 1 > 1 row selected > ij> insert into tauto (j,k) values (1,1); > 1 row inserted/updated/deleted > ij> values identity_val_local(); > 1 > ------------------------------- > 2 > 1 row selected > ij> insert into tauto values (5,1,1); > 1 row inserted/updated/deleted > ij> values identity_val_local(); > 1 > ------------------------------- > 2 > <<<<<<<<<<<<<<============= This needs be '5' > 1 row selected > ij> select * from tauto; > I |J |K > ----------------------------------- > 1 |1 |1 > 2 |1 |1 > 5 |1 |1 > 3 rows selected -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira