db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kathey Marsden (JIRA)" <derby-...@db.apache.org>
Subject [jira] Commented: (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.
Date Mon, 16 Jan 2006 22:09:21 GMT
    [ http://issues.apache.org/jira/browse/DERBY-353?page=comments#action_12362891 ] 

Kathey Marsden commented on DERBY-353:
--------------------------------------

In looking at the master for autogeneratedJdbc30, I noticed that although the master was updated
with this fix to reflect  the new results,  the  test output description of the results does
not  match the new results. e.g.

NEW OUTPUT:
Test 3 - insert multiple rows into a table with autogenerated key and request generated keys
resultset
 We will get a row with NULL value because this insert sql inserted more than one row and
 there was no prior one-row insert into a table with autogenerated key
         1
         -
        {3} 


OLD OUTPUT:
Test 3 - insert multiple rows into a table with autogenerated key and request generated keys
resultset
 We will get a row with NULL value because this insert sql inserted more than one row and
 there was no prior one-row insert into a table with autogenerated key
         1
         -
        {null}


> 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
>         Type: Bug
>   Components: SQL
>     Versions: 10.1.1.0
>  Environment: Generic
>     Reporter: Satheesh Bandaram
>     Assignee: V.Narayanan
>  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


Mime
View raw message