3 * Copyright © 2013 František Kučera (frantovo.cz)
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation, either version 3 of the License, or
8 * (at your option) any later version.
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
18 package info.globalcode.sql.dk;
20 import java.sql.Types;
23 * Data types of SQL parameters.
25 * @author Ing. František Kučera (frantovo.cz)
30 * Names must be upper case – user input is also converted to upper case → case insensitive
33 TINYINT(Types.TINYINT),
34 SMALLINT(Types.SMALLINT),
35 INTEGER(Types.INTEGER),
40 NUMERIC(Types.NUMERIC),
41 DECIMAL(Types.DECIMAL),
43 VARCHAR(Types.VARCHAR),
44 LONGVARCHAR(Types.LONGVARCHAR),
47 TIMESTAMP(Types.TIMESTAMP),
49 VARBINARY(Types.VARBINARY),
50 LONGVARBINARY(Types.LONGVARBINARY),
53 JAVA_OBJECT(Types.JAVA_OBJECT),
54 DISTINCT(Types.DISTINCT),
60 DATALINK(Types.DATALINK),
61 BOOLEAN(Types.BOOLEAN),
64 NVARCHAR(Types.NVARCHAR),
65 LONGNVARCHAR(Types.LONGNVARCHAR),
68 /** value from java.sql.Types */
71 private SQLType(int code) {
76 * @see java.sql.Types.Types
78 public int getCode() {
83 * @param code see {@linkplain java.sql.Types.Types}
84 * @return found SQLType
85 * @throws IllegalArgumentException if no data type has given code
87 public static SQLType valueOf(int code) {
88 for (SQLType t : values()) {
93 throw new IllegalArgumentException("No data type has code: " + code);