暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

GBase 8a数据库JDBC升级啦

GBASE数据库 2022-07-18
648

GBase JDBC 8.3.81.x 版本之前使用使用 SELECT 别名的情况,ResultSetMetaData.getColumnName()返回的是列的别名。8.3.81.x 之后返回的是列名。
在 8.3.81.x 版本中可以调用 ResultSetMetaData.getColumnLabel()来获取列别名。
应用程序可以通过设置 useOldAliasMetadataBehavior 来确定ResultSetMetaData.getColumnLabel()的返回值是别名还是列名。当useOldAliasMetadataBehavior 等 true 时,ResultSetMetaData.getColumnLabel()返回值为列别名,反之为列名。
GBase JDBC 8.3.81.x 之后 useOldAliasMetadataBehavior 的默认值为false。


那么GBase JDBC 又是什么呢?

GBase JDBC 主要类与接口
GBase JDBC 由具有建立和管理与 GBase 数据库连接功能、执行 SQL 语句功能和对结果集进行储存和管理功能的若干功能类组成。

URL 语法、JDBC Connector 配置属性
对于 GBase JDBC ,JDBC URL 的格式如下,方括号([, ])里的项是可选的:
jdbc:gbase://[host][:port]/[database][?propertyName1][=propertyValue1][&propertyName2][=propertyValue2]...
如果没有指定数据库,这个连接将没有'当前'数据库。这种情况下,用户需要在连接实例上调用 setCatalog()方法,或者在 SQL 中使用数据库名完整指
定表名(即 'SELECT dbname.tablename.colname FROM dbname.tablename...')。不指定连接使用的数据库,只用在建立的连接需要使用多个库的工具时才有用,如 GUI 数据库管理器。

GBase JDBC API 实现要点
GBase JDBC 通过了 Sun's JDBC 兼容性测试套件中的测试。然而,在许多地方,关于如何实现特定功能,JDBC 规范并没有给出明确的规定,因此存在一
定程度的实现上的灵活性。

使用字符集和 Unicode
JDBC 驱动发送给服务器的所有字符串都自动地从本地的 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。

TIPS:如果您需要安装,我们提供的 JDBC 接口的 jar 包文件格式如下:
gbase-connector-java-<product version>-<build version>-bin.jar。
例如:gbase-connector-java-8.3.81.53-build52.2-bin.jar。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论