package ca.sqlpower.sql; import java.sql.Types; /** * This class helps with SQL syntax when creating and altering columns * in SQLServer. * * @author Jonathan Fuerth * @version $Id$ */ public class SQLServerTypeConverter extends SqlTypeConverter { /** * Overrides the superclass's convertType method where required by * SqlServer syntax. */ public String convertType(int sqlType, int precision, int scale) { switch (sqlType) { case Types.SMALLINT: return "SMALLINT"; case Types.INTEGER: return "INTEGER"; case Types.FLOAT: return "REAL"; case Types.DOUBLE: case Types.REAL: return "DOUBLE"; case Types.NUMERIC: if (precision > 0 && scale > 0) { return "NUMERIC("+precision+","+scale+")"; } else if (precision > 0) { return "NUMERIC("+precision+")"; } else { return "NUMERIC"; } case Types.TIMESTAMP: return "DATETIME"; default: return super.convertType(sqlType, precision, scale); } } }