References: ADQL spec: http://www.ivoa.net/Documents/REC/ADQL/ADQL-20081030.pdf Postgres data types: http://are.berkeley.edu/computing/help/manuals/postgres/c08.htm JDBC data types (java.sql.Types) SQL 92 grammar: http://savage.net.au/SQL/sql-92.bnf.html SQL 99 grammar: http://savage.net.au/SQL/sql-99.bnf.html SQL 2003 grammar: http://savage.net.au/SQL/sql-2003-2.bnf.html datatypes inferred from ADQL spec' SQL reserved keywords using SQL 92 grammar for some inference on their usage: ----------------------------------------------------------------------------------- BIT [[(L)]] BIT VARYING [(L)] CHAR [(L)] CHARACTER [(L)] (?) CHARACTER VARYING [(L)] (?) DATE DECIMAL [(L,S)] DOUBLE PRECISION FLOAT IDENTITY (?) INT INTEGER INTERVAL (?) NCHAR [(L)] NCHAR VARYING[(L)] NATIONAL CHAR [(L)] NATIONAL CHAR VARYING [(L)] NATIONAL CHARACTER [(L)] (?) NATIONAL CHARACTER VARYING [(L)] (?) NUMERIC [(L,S)] REAL SMALLINT TIME TIMESTAMP VARCHAR SQL-92 grammar on datatypes --------------------------- ::= [ CHARACTER SET ] | | | | | ::= CHARACTER [ ] | CHAR [ ] | CHARACTER VARYING [ ] | CHAR VARYING [ ] | VARCHAR [ ] ::= ::= NATIONAL CHARACTER [ ] | NATIONAL CHAR [ ] | NCHAR [ ] | NATIONAL CHARACTER VARYING [ ] | NATIONAL CHAR VARYING [ ] | NCHAR VARYING [ ] ::= BIT [ ] | BIT VARYING [ ] ::= | ::= NUMERIC [ [ ] ] | DECIMAL [ [ ] ] | DEC [ [ ] ] | INTEGER | INT | SMALLINT ::= ::= ::= FLOAT [ ] | REAL | DOUBLE PRECISION ::= DATE | TIME [