... Class.forName("weblogic.jdbc.MSSQLserver4.Driver").newInstance(); conn = myDriver.connect("jdbc:weblogic:mssqlserver4", props); conn.setCatalog("labmanager"); Statement st = conn.createStatement(); //execute a query String testStr; String testTempStr = new String() ; testStr = new String(testTempStr.getBytes("ISO-8859-1"));//编码转化 DatabaseMetaData DBMetaData =conn.getMetaData(); ResultSet rs = DBMetaData.getTables(null, null,null,new String[]{"TABLE"} ); while (rs.next()){ for(int j=1; j<=rs.getMetaData().getColumnCount(); j++){ testStr = testStr +String(rs.getObject(j).toString().getBytes("ISO-8859-1")); } }
然而,需要注重的是,不同的JDBC驱动对相同的数据库的支持并不同,而同一类JDBC驱动对不同的数据库的支持也不相同,也就是说我们的字符转化代码在JDBC驱动改变甚至是版本变化情况下都有可能无法正确工作。例如对于上面的例子,在同样的环境下改用i-net 的Una 2000 Driver Version 2.03 for MS SQL Serve