db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dag H. Wanvik (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (DERBY-3155) Support for SQL:2003 MERGE statement
Date Mon, 26 Aug 2013 10:59:53 GMT

    [ https://issues.apache.org/jira/browse/DERBY-3155?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13749990#comment-13749990
] 

Dag H. Wanvik commented on DERBY-3155:
--------------------------------------

just read through the functional spec of the MERGE statement. Looks good, found little to
whine about ;-)

> Privileges - Current privileges must include:
> - UPDATE privilege on every updated column of targetTable.

or on entire table (all columns)

> - INSERT on every inserted column of targetTable.

INSERT privilege is for the entire table right? (the wording "on every inserted column" threw
me off)

> functions - Functions mentioned in the booleanExpressions may not modify SQL data.

Can they be non-deterministic I wonder?
                
> Support for SQL:2003 MERGE statement
> ------------------------------------
>
>                 Key: DERBY-3155
>                 URL: https://issues.apache.org/jira/browse/DERBY-3155
>             Project: Derby
>          Issue Type: Improvement
>          Components: SQL
>            Reporter: Trejkaz
>            Assignee: Rick Hillegas
>              Labels: derby_triage10_10
>         Attachments: derby-3155-01-ac-grammar.diff, MergeStatement.html, MergeStatement.html
>
>
> A relatively common piece of logic in a database application is to check for a row's
existence and then either update or insert depending on its existence.
> SQL:2003 added a MERGE statement to perform this operation.  It looks like this:
>     MERGE INTO table_name USING table_name ON (condition)
>     WHEN MATCHED THEN UPDATE SET column1 = value1 [, column2 = value2 ...]
>     WHEN NOT MATCHED THEN INSERT column1 [, column2 ...] VALUES (value1 [, value2 ...])

> At the moment, the only workaround for this would be to write a stored procedure to do
the same operation, or to implement the logic client-side.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message