db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mike Matrigali (JIRA)" <derby-...@db.apache.org>
Subject [jira] Updated: (DERBY-437) SYSCS_UTIL.SYSCS_COMPRESS_TABLE does not work on tables that are created with delimited identifier names.
Date Mon, 01 May 2006 19:35:47 GMT
     [ http://issues.apache.org/jira/browse/DERBY-437?page=all ]

Mike Matrigali updated DERBY-437:
---------------------------------

    Fix Version: 10.1.3.0
                 10.1.2.4

backported this fix from trunk into 10.1 line:
m101_142:135>svn commit

Sending        java\engine\org\apache\derby\catalog\SystemProcedures.java
Sending        java\testing\org\apache\derbyTesting\functionTests\master\compres
sTable.out
Sending        java\testing\org\apache\derbyTesting\functionTests\tests\lang\com
pressTable.sql
Sending        java\testing\org\apache\derbyTesting\functionTests\tests\store\st
reamingColumn.java
Transmitting file data ....
Committed revision 398665.

> SYSCS_UTIL.SYSCS_COMPRESS_TABLE  does not work  on tables that are created with delimited
identifier names.
> -----------------------------------------------------------------------------------------------------------
>
>          Key: DERBY-437
>          URL: http://issues.apache.org/jira/browse/DERBY-437
>      Project: Derby
>         Type: Bug

>   Components: SQL
>     Versions: 10.0.2.2
>     Reporter: Suresh Thalamati
>     Assignee: Suresh Thalamati
>      Fix For: 10.2.0.0, 10.1.3.0, 10.1.2.4
>  Attachments: derby437.diff
>
> COMPRESS_TABLE procedure forms SQL statement undeneath,  so if  the user does not pass
quoted names , it is not working with delimited table/schema names..
> eg: create table "Order"(a int ) ;
> ij> call SYSCS_UTIL.SYSCS_COMPRESS_TABLE('APP' , 'Order'  ,1) ;
> ERROR 38000: The exception 'SQL Exception: Syntax error: Encountered "Order" at
> line 1, column 17.' was thrown while evaluating an expression.
> ERROR 42X01: Syntax error: Encountered "Order" at line 1, column 17.
> With quoted names it works fine.
> ij> call SYSCS_UTIL.SYSCS_COMPRESS_TABLE('APP' , '"Order"'  ,1) ;
> 0 rows inserted/updated/deleted
> If  it is  expected that  user to pass quoted names for SYSCS_UTIL.SYSCS_COMPRESS_TABLE,
then it is ok.
> But doc is not clear:
> COMPRESS_TABLE doc in the reference manual:
> TABLENAME
>    An input argument of type VARCHAR(128) that specifies the table name
>    of the table. The string must exactly match the case of the table
>    name, and the argument of "Fred" will be passed to SQL as the
>    delimited identifier 'Fred'. Passing a null will result in an error.
> So either doc has to be fixed or code needs to be fixed to handle  quoted names for compress
table.
> I think the code has to fixed to be consistent with other system procedures. .  i.e
> If you  created a schema, table or column name as a non-delimited identifier, you must
pass the name in all upper case. If you created a schema, table or column name as a delimited
identifier, you must pass the name in the same case as it was created.
> For example:
> create table "Order"(a int ) ;
> call SYSCS_UTIL.SYSCS_COMPRESS_TABLE('APP' , 'Order'  ,1) ;
> create table t1( a int ) 
> call SYSCS_UTIL.SYSCS_COMPRESS_TABLE('APP' , 'T1'  ,1) ;

-- 
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