Remko Popma | 2 Nov 2003 06:57
Picon

Support for McKoi in Azzurri Clay Database Modelling plugin for Eclipse

Hi,

I am adding support for McKoi to our database modelling tool
(http://www.azzurri.jp/en/software/clay/index.jsp).

Martin Cordova indicated in a previous post that the tool
already works well with McKoi. I understand that selecting the
HSQLDB dialect when reverse engineering a database and/or 
generating the DDL works well with McKoi.

I am glad to hear that works, but having a separate SQL dialect
for McKoi would be even better, so I am working on that now.

I found most of what I need in the documentation, except for
the following:
- What are McKoi's restrictions?
  * schema/table/column name length
  * columns in table/select/foreign key/primary key/unique key/index
  * etc (see below)
- What are McKoi's reserved words (words that cannot be used
  as schema/table/column identifiers without quoting them)
- Is is possible to obtain the source or definition of a VIEW 
  from a JDBC connection? If so, what would be the SQL for doing this? 
  Eg., is there some statement to do this like 
	SELECT VIEW_DEFINITION from SYS_JDBC.Views 
	 WHERE TABLE_SCHEM = ?
	   AND TABLE_NAME = ?
	
I made some guesses based on the source code, and I would 
like to confirm that my guesses are correct:

If anyone has time, could you please confirm if the below are
correct restrictions for McKoi?

MaxCheckConstraintNameLength = 256
MaxColumnAliasNameLength = 256
MaxColumnNameLength = 256
MaxColumnsInForeignKey = 4096
MaxColumnsInGroupBy = 4096
MaxColumnsInIndex = 4096
MaxColumnsInOrderBy = 4096
MaxColumnsInPrimaryKey = 4096
MaxColumnsInSelect = 4096
MaxColumnsInTable = 4096
MaxColumnsInUniqueKey = 4096
MaxForeignKeyNameLength = 256
MaxForeignKeysInTable = 4096
MaxIndexesInTable = 4096
MaxIndexNameLength = 256
MaxPrimaryKeyNameLength = 256
MaxSchemaNameLength = 50
MaxTableNameLength = 50
MaxTablesInSelect = 512
MaxUniqueKeyNameLength = 256
MaxUniqueKeysInTable = 4096
MaxViewNameLength = 50

Are these the correct reserved words (words that cannot be used
as schema/table/column identifiers without quoting them) for McKoi?
ACCOUNT,
ACTION,
ADD,
AFTER,
ALL,
ALTER,
AND,
ANY,
AS,
ASC,
AUTO,
BEFORE,
BETWEEN,
BIGINT,
BINARY,
BIT,
BLOB,
BOOLEAN,
BOTH,
BY,
CACHE,
CALL,
CALLBACK,
CANONICAL_DECOMPOSITION,
CASCADE,
CAST,
CHAR,
CHARACTER,
CHECK,
CLOB,
COLLATE,
COLUMN,
COMMIT,
COMMITTED,
COMPACT,
CONSTRAINT,
COUNT,
CREATE,
CROSS,
CURRENT_DATE,
CURRENT_TIME,
CURRENT_TIMESTAMP,
CYCLE,
DATE,
DECIMAL,
DEFAULT,
DEFERRABLE,
DEFERRED,
DELETE,
DESC,
DESCRIBE,
DISTINCT,
DOUBLE,
DROP,
EACH,
EXCEPT,
EXECUTE,
EXISTS,
EXPLAIN,
FLOAT,
FOR,
FOREIGN,
FROM,
FULL_DECOMPOSITION,
FUNCTION,
GRANT,
GROUP,
GROUPS,
HAVING,
IDENTICAL_STRENGTH,
IF,
IGNORE,
IMMEDIATE,
IN,
INCREMENT,
INDEX,
INDEX_BLIST,
INDEX_NONE,
INITIALLY,
INNER,
INSERT,
INT,
INTEGER,
INTERSECT,
INTO,
IS,
ISOLATION,
JAVA,
JAVA_OBJECT,
JOIN,
KEY,
LANGUAGE,
LEADING,
LEFT,
LEVEL,
LIKE,
LIMIT,
LOCK,
LONG,
LONGVARBINARY,
LONGVARCHAR,
MAX,
MAXVALUE,
MINVALUE,
NAME,
NATURAL,
NEW,
NO,
NO_DECOMPOSITION,
NOT,
NUMERIC,
OLD,
ON,
OPTIMIZE,
OPTION,
OR,
ORDER,
OUTER,
PASSWORD,
PRIMARY,
PRIMARY_STRENGTH,
PRIVILEGES,
PROCEDURE,
PUBLIC,
READ,
REAL,
REFERENCES,
REGEX,
REPEATABLE,
RESTRICT,
RETURN,
RETURNS,
REVOKE,
RIGHT,
ROLLBACK,
ROW,
SCHEMA,
SECONDARY_STRENGTH,
SELECT,
SEQUENCE,
SERIALIZABLE,
SET,
SHOW,
SHUTDOWN,
SMALLINT,
SOME,
START,
STRING,
TABLE,
TEMPORARY,
TERTIARY_STRENGTH,
TEXT,
TIME,
TIMESTAMP,
TINYINT,
TO,
TRAILING,
TRANSACTION,
TRIGGER,
TRIM,
UNCOMMITTED,
UNION,
UNIQUE,
UNLOCK,
UPDATE,
USAGE,
USE,
USER,
USING,
VALUES,
VARBINARY,
VARCHAR,
VARYING,
VIEW,
WHERE,
WITH

I could not find anything on if and how view definitions 
are stored in McKoi. (But I didn't look very hard.) It
looks like this is not possible with McKoi 1.0.2, but I
could be wrong. If you know how to do this please let me know.

Any help is much appreciated.

Best regards,
Remko
------------------------------
Remko Popma - CTO Azzurri Ltd.

remko.popma <at> azzurri.jp
http://www.azzurri.jp

---------------------------------------------------------------
Mckoi SQL Database mailing list  http://www.mckoi.com/database/
To unsubscribe, send a message to mckoidb-unsubscribe <at> mckoi.com


Gmane