本文通过实例介绍如何通过jdbc连接GBase8s,然后向数据库插入xml格式内容。
首先需要声明下GBase8s 当前是没有数据库有专门对应xml类型的列类型来存储xml数据。针对GBase8s他是提供了一个工具类将xml读取后作为字符串存储到varchar,lvarchar,text等类型中。后续我们以lvachar类型举例说明。
1、创建数据库
1)创建数据库
create database test with log;
2、创建测试用数据表
1)切换到test数据库下
database test;
2)执行建表语句如下
create table tab1 (col1 lvarchar);
3、准备xml文档
内容如下:
4、编写测试用例
String url = null;
url = “jdbc:gbasedbt-sqli://localhost:19088/test:GBASEDBTSERVER=gbase01;DB_LOCALE=zh_CN.utf8;CLIENT_LOCALE=zh_CN.utf8;IFX_LOCK_MODE_WAIT=30;”;
Connection conn = null;
Class.forName(“com.gbasedbt.jdbc.Driver”);
conn = DriverManager.getConnection(url, “gbasedbt”, “GBase123”);
PreparedStatement p = conn.prepareStatement(“insert into tab1 values(?)”);
p.setString(1, UtilXML.XMLtoString(“F:wksGBase8sTestGBase8sTestsrcmainjavacomgbasedbtjdbc1.xml”));
p.execute();
p.close();
p = conn.prepareStatement(“select * from tab1”);
ResultSet rs = p.executeQuery();
while(rs.next()){
System.out.println(rs.getString(1));
}
conn.close();
5、执行结果:
6、总结:
GBase 8s本身不提供特殊类型用于存储xml格式内容,但是GBase8s jdbc本身提供了xml操作类UtilXML,方便读取xml内容,针对读取后的内容作为字符串的形式可存储与相关的varchar,lvarchar等类型中。UtilXML本身提供了多种方法用于读取,解析xml内容。后续我们会单独介绍通过UtilXML类采用dom方式解析从数据库中读取的xml内容。



