JDBC connection.getschema() AbstractMethodError
JDBC connection.getschema() AbstractMethodError
我正在尝试从 Teradata 的连接中获取默认数据库名称。我正在使用 Teradata JDBC 驱动程序 15.10.00.33。
下面的代码给我这个抽象方法错误。谁能建议我如何使用 jdbc 获取默认数据库名称?
Exception in thread "main" java.lang.AbstractMethodError: com.teradata.jdbc.jdk6.JDK6_SQL_Connection.getSchema()Ljava/lang/String;
public class TestTDConnection {
public static void main(String args[]) {
String tdConnString = "jdbc:teradata://xx/database=xx";
try {
Connection conn = DriverManager.getConnection(tdConnString,"xx","xx");
System.out.println(conn.getSchema());
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
如果您查看 getSchema()
的 javadoc,您会注意到以下内容:
Since:
1.7
这意味着您需要 Java 7 驱动程序,错误消息中的类名明显表明您正在使用 Java 6 驱动程序:
com.teradata.jdbc.jdk6.JDK6_SQL_Connection
用 Java 7 (JDBC 4.1) 兼容的驱动程序替换驱动程序 .jar 文件。
或者不使用Java 7 个功能。
我正在尝试从 Teradata 的连接中获取默认数据库名称。我正在使用 Teradata JDBC 驱动程序 15.10.00.33。
下面的代码给我这个抽象方法错误。谁能建议我如何使用 jdbc 获取默认数据库名称?
Exception in thread "main" java.lang.AbstractMethodError: com.teradata.jdbc.jdk6.JDK6_SQL_Connection.getSchema()Ljava/lang/String;
public class TestTDConnection {
public static void main(String args[]) {
String tdConnString = "jdbc:teradata://xx/database=xx";
try {
Connection conn = DriverManager.getConnection(tdConnString,"xx","xx");
System.out.println(conn.getSchema());
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
如果您查看 getSchema()
的 javadoc,您会注意到以下内容:
Since:
1.7
这意味着您需要 Java 7 驱动程序,错误消息中的类名明显表明您正在使用 Java 6 驱动程序:
com.teradata.jdbc.jdk6.JDK6_SQL_Connection
用 Java 7 (JDBC 4.1) 兼容的驱动程序替换驱动程序 .jar 文件。
或者不使用Java 7 个功能。