Return-Path: Delivered-To: apmail-db-derby-dev-archive@www.apache.org Received: (qmail 45899 invoked from network); 13 Nov 2008 12:50:08 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 13 Nov 2008 12:50:08 -0000 Received: (qmail 60994 invoked by uid 500); 13 Nov 2008 12:50:12 -0000 Delivered-To: apmail-db-derby-dev-archive@db.apache.org Received: (qmail 60973 invoked by uid 500); 13 Nov 2008 12:50:12 -0000 Mailing-List: contact derby-dev-help@db.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: Delivered-To: mailing list derby-dev@db.apache.org Received: (qmail 60956 invoked by uid 99); 13 Nov 2008 12:50:12 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 13 Nov 2008 04:50:12 -0800 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.140] (HELO brutus.apache.org) (140.211.11.140) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 13 Nov 2008 12:49:00 +0000 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 763F9234C282 for ; Thu, 13 Nov 2008 04:49:44 -0800 (PST) Message-ID: <1413915963.1226580584483.JavaMail.jira@brutus> Date: Thu, 13 Nov 2008 04:49:44 -0800 (PST) From: "Knut Anders Hatlen (JIRA)" To: derby-dev@db.apache.org Subject: [jira] Commented: (DERBY-481) implement SQL generated columns MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/DERBY-481?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12647275#action_12647275 ] Knut Anders Hatlen commented on DERBY-481: ------------------------------------------ > Is this the right behavior? I would have expected that attempts to set a column which is GENERATED ALWAYS AS failed. Similarly to what happens if you try to specify the value of an identity column (GENERATED ALWAYS AS IDENTITY): ij> insert into tt select * from b; ERROR 42Z23: Attempt to modify an identity column 'B'. > It seems a bit non-intuitive to require the > result set inserted to have two columns when only one is used anyway... Note that you could specify that you only set some of the columns in the insert (again similarly to how you'd do it if you had an identity column): insert into a(i) select i from b > implement SQL generated columns > ------------------------------- > > Key: DERBY-481 > URL: https://issues.apache.org/jira/browse/DERBY-481 > Project: Derby > Issue Type: New Feature > Components: SQL > Affects Versions: 10.0.2.1 > Reporter: Rick Hillegas > Assignee: Rick Hillegas > Attachments: derby-481-00-aa-prototype.diff, derby-481-01-aa-catalog.diff, derby-481-02-aa-utilities.diff, derby-481-03-aa-grammar.diff, derby-481-04-aa-insert.diff, derby-481-05-aa-update.diff, derby-481-06-aa-genreferences.diff, derby-481-07-aa-noSQLinRoutines.diff, derby-481-07-ab-noSQLinRoutines.diff, derby-481-08-aa-castToDeclaredType.diff, derby-481-09-aa-dummyDefaults.diff, derby-481-10-aa-foreignKeyActions.diff, derby-481-11-aa-notNull.diff, derby-481-12-aa-padding.diff, derby-481-13-aa-alterDatatype.diff, derby-481-14-ab-dropColumn.diff, derby-481-15-aa-renameAndAddDefault.diff, derby-481-16-aa-dropFunction.diff, GeneratedColumns.html > > > Satheesh has pointed out that generated columns, a SQL 2003 feature, would satisfy the performance requirements of Expression Indexes (bug 455). Generated columns may not be as elegant as Expression Indexes, but they are easier to implement. We would allow the following new kind of column definition in CREATE TABLE and ALTER TABLE statements: > columnName GENERATED ALWAYS AS ( expression ) > If expression were an indexableExpression (as defined in bug 455), then we could create indexes on it. There is no work for the optimizer to do here. The Language merely has to compute the generated column at INSERT/UPDATE time. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.