Java 如何使用Connection.getMetaData().getTables筛选全局临时表
我使用以下SQL语句在Oracle11g中创建了一个全局临时表Java 如何使用Connection.getMetaData().getTables筛选全局临时表,java,database,jdbc,oracle11g,database-metadata,Java,Database,Jdbc,Oracle11g,Database Metadata,我使用以下SQL语句在Oracle11g中创建了一个全局临时表 SQL> CREATE GLOBAL TEMPORARY TABLE TEST (id int primary key); 现在,我如何使用 这里我得到的是TABLE\u TYPE=TABLE而不是上述TEST表的GLOBAL TEMPORARY 下面是我的java代码 import java.sql.Connection; import java.sql.DatabaseMetaData; import java.sql.
SQL> CREATE GLOBAL TEMPORARY TABLE TEST (id int primary key);
现在,我如何使用
这里我得到的是TABLE\u TYPE=TABLE
而不是上述TEST
表的GLOBAL TEMPORARY
下面是我的java代码
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class GetGlobalTempTables {
public static void main(String[] args) {
Connection connection = null;
Statement connStmt = null;
ResultSet res = null;
String dbURL = "jdbc:oracle:thin:@localhost:1521:xe";
String user = "testuser";
String pass = "testpass";
try {
connection = DriverManager.getConnection(dbURL, user, pass);
DatabaseMetaData meta = connection.getMetaData();
res = meta.getTables(null, "TEST_SCHEMA", null, new String[] { "TABLE", "VIEW" });
while (res.next()) {
System.out.println(res.getString("TABLE_SCHEM") + ", " + res.getString("TABLE_NAME") + ", "
+ res.getString("TABLE_TYPE"));
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
try {
if (res != null) {
res.close();
}
if (connStmt != null) {
connStmt.close();
}
if (connection != null && !connection.isClosed()) {
connection.close();
}
} catch (SQLException ex) {
ex.printStackTrace();
}
}
}
}
任何帮助都将不胜感激 请检查较新的驱动程序版本,或者向Oracle提交错误报告。我已从[链接]下载了最新的驱动程序。如果我错了,请纠正我。也许可以尝试一下,但也应该与Oracle 11g一起使用(注意:我并不是说它可以解决这个问题,但有时这些类型的更改只在较新的驱动程序版本中引入)。我恐怕要说,最新的驱动程序与我的代码不兼容。它抛出java.sql.SQLException:找不到适合jdbc的驱动程序:oracle:thin:@localhost:1521:xe您是否仍在使用java 7?请检查较新的驱动程序版本,或者向oracle提交错误报告。我已从[link]下载了最新的驱动程序。如果我错了,请纠正我。也许可以尝试一下,但也应该与Oracle 11g一起使用(注意:我并不是说它可以解决这个问题,但有时这些类型的更改只在较新的驱动程序版本中引入)。我恐怕要说,最新的驱动程序与我的代码不兼容。它抛出java.sql.SQLException:找不到适合jdbc的驱动程序:oracle:thin:@localhost:1521:xe您是否仍在使用java 7?