db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Knut Anders Hatlen (JIRA)" <j...@apache.org>
Subject [jira] Commented: (DERBY-4013) Allow standard SQL syntax: ALTER TABLE ALTER [COLUMN] <col> SET DEFAULT <default>
Date Tue, 20 Jan 2009 09:05:00 GMT

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

Knut Anders Hatlen commented on DERBY-4013:
-------------------------------------------

I'm fine with the suggested approach. If someone thinks it's important that we distinguish
between the no default case and the NULL default case, that could be fixed later, but for
now this looks like a fine incremental improvement to me.

Two tiny nits:
  - there's a pure whitespace diff right above dropTableConstraintDefinition() in sqlgrammar.jj
  - the javadoc comment for wrapAlterColumnDefaultValue() just says "Minion", which is not
very descriptive (but it's great that this common code was factored out!)

> Allow standard SQL syntax: ALTER TABLE ALTER [COLUMN] <col> SET DEFAULT <default>
> ---------------------------------------------------------------------------------
>
>                 Key: DERBY-4013
>                 URL: https://issues.apache.org/jira/browse/DERBY-4013
>             Project: Derby
>          Issue Type: Improvement
>          Components: SQL
>    Affects Versions: 10.0.2.0, 10.0.2.1, 10.1.1.0, 10.1.2.1, 10.1.3.1, 10.2.1.6, 10.2.2.0,
10.3.1.4, 10.3.2.1, 10.3.3.0, 10.4.1.3, 10.4.2.0
>            Reporter: Dag H. Wanvik
>            Assignee: Dag H. Wanvik
>            Priority: Minor
>             Fix For: 10.5.0.0
>
>         Attachments: derby-4013.diff, derby-4013.stat, derby-4013b.diff, derby-4013b.stat,
derby-4013c.diff, derby-4013c.stat
>
>
> Presently, the Derby syntax is ALTER TABLE ALTER [COLUMN] <col> [WITH] DEFAULT
<default>.
> The "SET" keyword is not accepted, only an optional "WITH". It would be good to accept
the standard syntax here as well.
> Cf. SQL 2003, section 11.12 <alter column definition> and section 11.13 <set
column default clause>.
> Also, DROP DEFAULT is standard syntax not supported, so we should add that, too.
> Repro on trunk:
> $ java org.apache.derby.tools.ij
> ij version 10.5
> ij> connect 'jdbc:derby:wombat;create=true';
> ij> create table t(i int default 0, j int);
> 0 rows inserted/updated/deleted
> ij> alter table t alter column j with default 1;
> 0 rows inserted/updated/deleted
> ij> insert into t values (default, default);
> 1 row inserted/updated/deleted
> ij> select * from t;
> I          |J          
> -----------------------
> 0          |1          
> 1 row selected
> ij> alter table t alter column j default 2;
> 0 rows inserted/updated/deleted
> ij> insert into t values (default, default);
> 1 row inserted/updated/deleted
> ij> select * from t;
> I          |J          
> -----------------------
> 0          |1          
> 0          |2          
> 2 rows selected
> ij> alter table t alter column j set default 3;
> ERROR 42X01: Syntax error: Encountered "set" at line 1, column 30.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message