【发布时间】:2011-10-09 23:57:17
【问题描述】:
当使用PreparedStatement 的setObject 方法处理TEXT 类型的列(在MySQL DB 中)时,最后一个参数应该是什么?
例如,我知道这对于 VARCHAR 列是可以的:
stmt.setObject(i, "bla", Types.VARCHAR);
其中stmt 是PreparedStatement,Types 是java.sql.Types。
但是如果 DB 列的类型是 TEXT,我还应该使用 VARCHAR 吗?或者可能是 BLOB 或 CLOB?
【问题讨论】:
-
仅供参考:您可以使用
DatabaseMetaData.getColumns方法获取此信息。您可以通过调用connection.getMetaData()获取DatabaseMetaData对象。getColumns返回的ResultSet有一个名为DATA_TYPE的int列,这就是您要查找的内容。