private static void setNull(PreparedStatement ps, int paramIndex) throws SQLException {
		boolean useSetObject = false;
		int sqlType = Types.NULL;
		try {
			DatabaseMetaData metaData = ps.getConnection().getMetaData();
			String databaseProductName = metaData.getDatabaseProductName();
			String jdbcDriverName = metaData.getDriverName();
			if (databaseProductName.startsWith("Informix") || jdbcDriverName.startsWith("Microsoft SQL Server")) {
				useSetObject = true;
			} else if (databaseProductName.startsWith("DB2") || jdbcDriverName.startsWith("jConnect")
					|| jdbcDriverName.startsWith("SQLServer") || jdbcDriverName.startsWith("Apache Derby")) {
				sqlType = Types.VARCHAR;
			}
		} catch (Throwable ex) {
			LOGGER.debug("获取JDBC驱动信息失败", ex);
		}
		if (useSetObject) {
			ps.setObject(paramIndex, null);
		} else {
			ps.setNull(paramIndex, sqlType);
		}
	}