⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mysqldefs.java

📁 开发MySql数据库的最新JDBC驱动。
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
			break;		case MysqlDefs.FIELD_TYPE_VAR_STRING:		case MysqlDefs.FIELD_TYPE_VARCHAR:			jdbcType = Types.VARCHAR;			break;		case MysqlDefs.FIELD_TYPE_STRING:			jdbcType = Types.CHAR;			break;		case MysqlDefs.FIELD_TYPE_GEOMETRY:			jdbcType = Types.BINARY;			break;		case MysqlDefs.FIELD_TYPE_BIT:			jdbcType = Types.BIT;			break;		default:			jdbcType = Types.VARCHAR;		}		return jdbcType;	}	/**	 * Maps the given MySQL type to the correct JDBC type.	 */	static int mysqlToJavaType(String mysqlType) {		if (mysqlType.equalsIgnoreCase("BIT")) {			return mysqlToJavaType(FIELD_TYPE_BIT);		} else if (mysqlType.equalsIgnoreCase("TINYINT")) { //$NON-NLS-1$			return mysqlToJavaType(FIELD_TYPE_TINY);		} else if (mysqlType.equalsIgnoreCase("SMALLINT")) { //$NON-NLS-1$			return mysqlToJavaType(FIELD_TYPE_SHORT);		} else if (mysqlType.equalsIgnoreCase("MEDIUMINT")) { //$NON-NLS-1$			return mysqlToJavaType(FIELD_TYPE_INT24);		} else if (mysqlType.equalsIgnoreCase("INT") || mysqlType.equalsIgnoreCase("INTEGER")) { //$NON-NLS-1$ //$NON-NLS-2$			return mysqlToJavaType(FIELD_TYPE_LONG);		} else if (mysqlType.equalsIgnoreCase("BIGINT")) { //$NON-NLS-1$			return mysqlToJavaType(FIELD_TYPE_LONGLONG);		} else if (mysqlType.equalsIgnoreCase("INT24")) { //$NON-NLS-1$			return mysqlToJavaType(FIELD_TYPE_INT24);		} else if (mysqlType.equalsIgnoreCase("REAL")) { //$NON-NLS-1$			return mysqlToJavaType(FIELD_TYPE_DOUBLE);		} else if (mysqlType.equalsIgnoreCase("FLOAT")) { //$NON-NLS-1$			return mysqlToJavaType(FIELD_TYPE_FLOAT);		} else if (mysqlType.equalsIgnoreCase("DECIMAL")) { //$NON-NLS-1$			return mysqlToJavaType(FIELD_TYPE_DECIMAL);		} else if (mysqlType.equalsIgnoreCase("NUMERIC")) { //$NON-NLS-1$			return mysqlToJavaType(FIELD_TYPE_DECIMAL);		} else if (mysqlType.equalsIgnoreCase("DOUBLE")) { //$NON-NLS-1$			return mysqlToJavaType(FIELD_TYPE_DOUBLE);		} else if (mysqlType.equalsIgnoreCase("CHAR")) { //$NON-NLS-1$			return mysqlToJavaType(FIELD_TYPE_STRING);		} else if (mysqlType.equalsIgnoreCase("VARCHAR")) { //$NON-NLS-1$			return mysqlToJavaType(FIELD_TYPE_VAR_STRING);		} else if (mysqlType.equalsIgnoreCase("DATE")) { //$NON-NLS-1$			return mysqlToJavaType(FIELD_TYPE_DATE);		} else if (mysqlType.equalsIgnoreCase("TIME")) { //$NON-NLS-1$			return mysqlToJavaType(FIELD_TYPE_TIME);		} else if (mysqlType.equalsIgnoreCase("YEAR")) { //$NON-NLS-1$			return mysqlToJavaType(FIELD_TYPE_YEAR);		} else if (mysqlType.equalsIgnoreCase("TIMESTAMP")) { //$NON-NLS-1$			return mysqlToJavaType(FIELD_TYPE_TIMESTAMP);		} else if (mysqlType.equalsIgnoreCase("DATETIME")) { //$NON-NLS-1$			return mysqlToJavaType(FIELD_TYPE_DATETIME);		} else if (mysqlType.equalsIgnoreCase("TINYBLOB")) { //$NON-NLS-1$			return java.sql.Types.BINARY;		} else if (mysqlType.equalsIgnoreCase("BLOB")) { //$NON-NLS-1$			return java.sql.Types.LONGVARBINARY;		} else if (mysqlType.equalsIgnoreCase("MEDIUMBLOB")) { //$NON-NLS-1$			return java.sql.Types.LONGVARBINARY;		} else if (mysqlType.equalsIgnoreCase("LONGBLOB")) { //$NON-NLS-1$			return java.sql.Types.LONGVARBINARY;		} else if (mysqlType.equalsIgnoreCase("TINYTEXT")) { //$NON-NLS-1$			return java.sql.Types.VARCHAR;		} else if (mysqlType.equalsIgnoreCase("TEXT")) { //$NON-NLS-1$			return java.sql.Types.LONGVARCHAR;		} else if (mysqlType.equalsIgnoreCase("MEDIUMTEXT")) { //$NON-NLS-1$			return java.sql.Types.LONGVARCHAR;		} else if (mysqlType.equalsIgnoreCase("LONGTEXT")) { //$NON-NLS-1$			return java.sql.Types.LONGVARCHAR;		} else if (mysqlType.equalsIgnoreCase("ENUM")) { //$NON-NLS-1$			return mysqlToJavaType(FIELD_TYPE_ENUM);		} else if (mysqlType.equalsIgnoreCase("SET")) { //$NON-NLS-1$			return mysqlToJavaType(FIELD_TYPE_SET);		} else if (mysqlType.equalsIgnoreCase("GEOMETRY")) {			return mysqlToJavaType(FIELD_TYPE_GEOMETRY);		} else if (mysqlType.equalsIgnoreCase("BINARY")) {			return Types.BINARY; // no concrete type on the wire		} else if (mysqlType.equalsIgnoreCase("VARBINARY")) {			return Types.VARBINARY; // no concrete type on the wire		} else if (mysqlType.equalsIgnoreCase("BIT")) {			return mysqlToJavaType(FIELD_TYPE_BIT);		}		// Punt		return java.sql.Types.OTHER;	}	/**	 * @param mysqlType	 * @return	 */	public static String typeToName(int mysqlType) {		switch (mysqlType) {		case MysqlDefs.FIELD_TYPE_DECIMAL:			return "FIELD_TYPE_DECIMAL";		case MysqlDefs.FIELD_TYPE_TINY:			return "FIELD_TYPE_TINY";		case MysqlDefs.FIELD_TYPE_SHORT:			return "FIELD_TYPE_SHORT";		case MysqlDefs.FIELD_TYPE_LONG:			return "FIELD_TYPE_LONG";		case MysqlDefs.FIELD_TYPE_FLOAT:			return "FIELD_TYPE_FLOAT";		case MysqlDefs.FIELD_TYPE_DOUBLE:			return "FIELD_TYPE_DOUBLE";		case MysqlDefs.FIELD_TYPE_NULL:			return "FIELD_TYPE_NULL";		case MysqlDefs.FIELD_TYPE_TIMESTAMP:			return "FIELD_TYPE_TIMESTAMP";		case MysqlDefs.FIELD_TYPE_LONGLONG:			return "FIELD_TYPE_LONGLONG";		case MysqlDefs.FIELD_TYPE_INT24:			return "FIELD_TYPE_INT24";		case MysqlDefs.FIELD_TYPE_DATE:			return "FIELD_TYPE_DATE";		case MysqlDefs.FIELD_TYPE_TIME:			return "FIELD_TYPE_TIME";		case MysqlDefs.FIELD_TYPE_DATETIME:			return "FIELD_TYPE_DATETIME";		case MysqlDefs.FIELD_TYPE_YEAR:			return "FIELD_TYPE_YEAR";		case MysqlDefs.FIELD_TYPE_NEWDATE:			return "FIELD_TYPE_NEWDATE";		case MysqlDefs.FIELD_TYPE_ENUM:			return "FIELD_TYPE_ENUM";		case MysqlDefs.FIELD_TYPE_SET:			return "FIELD_TYPE_SET";		case MysqlDefs.FIELD_TYPE_TINY_BLOB:			return "FIELD_TYPE_TINY_BLOB";		case MysqlDefs.FIELD_TYPE_MEDIUM_BLOB:			return "FIELD_TYPE_MEDIUM_BLOB";		case MysqlDefs.FIELD_TYPE_LONG_BLOB:			return "FIELD_TYPE_LONG_BLOB";		case MysqlDefs.FIELD_TYPE_BLOB:			return "FIELD_TYPE_BLOB";		case MysqlDefs.FIELD_TYPE_VAR_STRING:			return "FIELD_TYPE_VAR_STRING";		case MysqlDefs.FIELD_TYPE_STRING:			return "FIELD_TYPE_STRING";		case MysqlDefs.FIELD_TYPE_VARCHAR:			return "FIELD_TYPE_VARCHAR";		case MysqlDefs.FIELD_TYPE_GEOMETRY:			return "FIELD_TYPE_GEOMETRY";		default:			return " Unknown MySQL Type # " + mysqlType;		}	}	private static Map mysqlToJdbcTypesMap = new HashMap();	static {		mysqlToJdbcTypesMap.put("BIT", new Integer(				mysqlToJavaType(FIELD_TYPE_BIT)));		mysqlToJdbcTypesMap.put("TINYINT", new Integer(				mysqlToJavaType(FIELD_TYPE_TINY)));		mysqlToJdbcTypesMap.put("SMALLINT", new Integer(				mysqlToJavaType(FIELD_TYPE_SHORT)));		mysqlToJdbcTypesMap.put("MEDIUMINT", new Integer(				mysqlToJavaType(FIELD_TYPE_INT24)));		mysqlToJdbcTypesMap.put("INT", new Integer(				mysqlToJavaType(FIELD_TYPE_LONG)));		mysqlToJdbcTypesMap.put("INTEGER", new Integer(				mysqlToJavaType(FIELD_TYPE_LONG)));		mysqlToJdbcTypesMap.put("BIGINT", new Integer(				mysqlToJavaType(FIELD_TYPE_LONGLONG)));		mysqlToJdbcTypesMap.put("INT24", new Integer(				mysqlToJavaType(FIELD_TYPE_INT24)));		mysqlToJdbcTypesMap.put("REAL", new Integer(				mysqlToJavaType(FIELD_TYPE_DOUBLE)));		mysqlToJdbcTypesMap.put("FLOAT", new Integer(				mysqlToJavaType(FIELD_TYPE_FLOAT)));		mysqlToJdbcTypesMap.put("DECIMAL", new Integer(				mysqlToJavaType(FIELD_TYPE_DECIMAL)));		mysqlToJdbcTypesMap.put("NUMERIC", new Integer(				mysqlToJavaType(FIELD_TYPE_DECIMAL)));		mysqlToJdbcTypesMap.put("DOUBLE", new Integer(				mysqlToJavaType(FIELD_TYPE_DOUBLE)));		mysqlToJdbcTypesMap.put("CHAR", new Integer(				mysqlToJavaType(FIELD_TYPE_STRING)));		mysqlToJdbcTypesMap.put("VARCHAR", new Integer(				mysqlToJavaType(FIELD_TYPE_VAR_STRING)));		mysqlToJdbcTypesMap.put("DATE", new Integer(				mysqlToJavaType(FIELD_TYPE_DATE)));		mysqlToJdbcTypesMap.put("TIME", new Integer(				mysqlToJavaType(FIELD_TYPE_TIME)));		mysqlToJdbcTypesMap.put("YEAR", new Integer(				mysqlToJavaType(FIELD_TYPE_YEAR)));		mysqlToJdbcTypesMap.put("TIMESTAMP", new Integer(				mysqlToJavaType(FIELD_TYPE_TIMESTAMP)));		mysqlToJdbcTypesMap.put("DATETIME", new Integer(				mysqlToJavaType(FIELD_TYPE_DATETIME)));		mysqlToJdbcTypesMap.put("TINYBLOB", new Integer(java.sql.Types.BINARY));		mysqlToJdbcTypesMap.put("BLOB", new Integer(				java.sql.Types.LONGVARBINARY));		mysqlToJdbcTypesMap.put("MEDIUMBLOB", new Integer(				java.sql.Types.LONGVARBINARY));		mysqlToJdbcTypesMap.put("LONGBLOB", new Integer(				java.sql.Types.LONGVARBINARY));		mysqlToJdbcTypesMap				.put("TINYTEXT", new Integer(java.sql.Types.VARCHAR));		mysqlToJdbcTypesMap				.put("TEXT", new Integer(java.sql.Types.LONGVARCHAR));		mysqlToJdbcTypesMap.put("MEDIUMTEXT", new Integer(				java.sql.Types.LONGVARCHAR));		mysqlToJdbcTypesMap.put("LONGTEXT", new Integer(				java.sql.Types.LONGVARCHAR));		mysqlToJdbcTypesMap.put("ENUM", new Integer(				mysqlToJavaType(FIELD_TYPE_ENUM)));		mysqlToJdbcTypesMap.put("SET", new Integer(				mysqlToJavaType(FIELD_TYPE_SET)));		mysqlToJdbcTypesMap.put("GEOMETRY", new Integer(				mysqlToJavaType(FIELD_TYPE_GEOMETRY)));	}	static final void appendJdbcTypeMappingQuery(StringBuffer buf, String mysqlTypeColumnName) {		buf.append("CASE ");		Map typesMap = new HashMap();		typesMap.putAll(mysqlToJdbcTypesMap);		typesMap.put("BINARY", new Integer(Types.BINARY));		typesMap.put("VARBINARY", new Integer(Types.VARBINARY));				Iterator mysqlTypes = typesMap.keySet().iterator();				while (mysqlTypes.hasNext()) {			String mysqlTypeName = (String)mysqlTypes.next();			buf.append(" WHEN ");			buf.append(mysqlTypeColumnName);			buf.append("='");			buf.append(mysqlTypeName);			buf.append("' THEN ");			buf.append(typesMap.get(mysqlTypeName));						if (mysqlTypeName.equalsIgnoreCase("DOUBLE") ||					mysqlTypeName.equalsIgnoreCase("FLOAT") ||					mysqlTypeName.equalsIgnoreCase("DECIMAL") ||					mysqlTypeName.equalsIgnoreCase("NUMERIC")) {				buf.append(" WHEN ");				buf.append(mysqlTypeColumnName);				buf.append("='");				buf.append(mysqlTypeName);				buf.append(" unsigned' THEN ");				buf.append(typesMap.get(mysqlTypeName));				}			}				buf.append(" ELSE ");		buf.append(Types.OTHER);		buf.append(" END ");			}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -