db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Bernt M. Johnsen" <Bernt.John...@Sun.COM>
Subject Re: [jira] Commented: (DERBY-699) Allow schema and savepoint names starting with "SYS"
Date Tue, 15 Nov 2005 12:13:04 GMT
>>>>>>>>>>>> Daniel John Debrunner wrote (2005-11-14 15:18:59):
> > The best approach would probably be to add a non-standard character to
> > the identifiers so that a non-standard prefix could be
> > used. E.g. "SYS$".
> 
> That's pretty ugly in my mind, not sure why would would force such use
> on Derby's users. If we went down this path, then we have a somewhat
> unique current prefix for some newer system schemas, "SYSCS_". Or
> something like "SYSDERBY_" could be picked.

I agree that "SYS$" (I worked with VMS in the 80's ;-) is ugly and
that SYSCS_ or SYSDERBY_ is better.

> Do other databases have restrictions in creating schemas?

I quick search on the web gave:

*** Postgres:  

Schema names beginning with pg_ are reserved for system purposes and
may not be created by users.

*** DB2: 

The reserved schema names are:

    * SYSCAT
    * SYSFUN
    * SYSIBM
    * SYSSTAT
    * SYSPROC 

It is strongly recommended that schema names never begin with the
'SYS' prefix, because 'SYS', by convention, is used to indicate an
area that is reserved by the system. No user-defined functions,
user-defined types, triggers, or aliases can be placed into a schema
whose name starts with 'SYS'

*** Sybase and SQL-server

None of these (unless quoted):

BACKUP   COLUMN  	COMMITTED  	CONTAINS  	 CONTAINSTABLE
CROSS 	CURRENT_DATE 	CURRENT_TIME 	CURRENT_TIMESTAMP 	CURRENT_USER
DENY 	DISTRIBUTED 	FILE 	FLOPPY 	FREETEXT
FREETEXTTABLE 	FULL 	IDENTITYCOL 	INNER 	JOIN
LEFT 	NOCHECK 	OPENDATASOURCE 	OPENQUERY 	OPENROWSET
OUTER 	PERCENT 	PIPE 	REPEATABLE 	REPLICATION
RESTORE 	RESTRICT 	RIGHT 	ROWGUIDECOL 	SERIALIZABLE 
SESSION_USER 	SYSTEMUSER 	TAPE 	TOP 	UNCOMMITTED
UPDATETEXT 	  	  	  	 

*** Oracle

None of the "Oracle reseved words" which in Oracle 8 was:

ACCESS ADD ALL ALTER AND ANY AS ASC AUDIT BETWEEN BY CHAR CHECK
CLUSTER COLUMN COMMENT COMPRESS CONNECT CREATE CURRENT DATE DECIMAL
DEFAULT DELETE DESC DISTINCT DROP ELSE EXCLUSIVE EXISTS FILE FLOAT FOR
FROM GRANT GROUP HAVING IDENTIFIED IMMEDIATE IN INCREMENT INDEX
INITIAL INSERT INTEGER INTERSECT INTO IS LEVEL LIKE LOCK LONG
MAXEXTENTS MINUS MLSLABEL MODE MODIFY NOAUDIT NOCOMPRESS NOT NOWAIT
NULL NUMBER OF OFFLINE ON ONLINE OPTION OR ORDER PCTFREE PRIOR
PRIVILEGES PUBLIC RAW RENAME RESOURCE REVOKE ROW ROWID ROWNUM ROWS
SELECT SESSION SET SHARE SIZE SMALLINT START SUCCESSFUL SYNONYM
SYSDATE TABLE THEN TO TRIGGER UID UNION UNIQUE UPDATE USER VALIDATE
VALUES VARCHAR VARCHAR2 VIEW WHENEVER WHERE WITH


-- 
Bernt Marius Johnsen, Database Technology Group, 
Sun Microsystems, Trondheim, Norway

Mime
View raw message