DBC 驱动发送给服务器的所有字符串都自动地从本地的 Java Unicode 转换
到客户端的字符编码,包括所有通过 Statement.execute() 、
Statement.executeUpdate() 、 Statement.executeQuery()发送的查询以及所
有 PreparedStatement 和 CallableStatement 参数,但使用 setBytes() 、
setBinaryStream() 、setAsiiStream() 、setUnicodeStream() 和 setBlob()
的参数集不包含在内。
GBase 8a 使用 JDBC 的 ResultSets 在客户端与服务器之间传输数据支持单 一编码形式以及任意数目的编码形式。
在连接时会自动地检测客户端与服务器之间的字符编码。通过配置变量, 驱动使用的编码指定在服务器上,这个变量在 GBase 8a server 中是 “character_set_server ”。如果不想客户端自动识别编码,可以在用来连接 服务器的 URL 中使用 characterEncoding 属性,使用该属性的同时必须使用设 置“useUnicode”的值为 true。
当在客户端指定字符编码时,应该使用 Java-style 名字。下表列出了对于
GBase 字符集的 Java-style 名字:
警告:在 GBase JDBC 中,不要执行“set names”来设置字符集,因为驱 动不会发现字符集已经改变,而是会继续使用在初始化连接设置时使用的字符 集。
为了允许从客户端发来的各种字符集,应当使用“UTF-8”编码,或者把
“UTF-8”配置成缺省的服务器字符集,或者通过 characterEncoding 属性配置
JDBC 驱动使用“UTF-8”。




