Statement stmt = conn.createStatement("desc test");
这样写PreparedStatement stmt = conn.prepareStatement("desc test");如果安你那么写的话你的SQL里面必须有参数
执行的时候必须设置参数
stmt.setString(1,..);
stmt.setString(2,..);
....
然后才可以执行~
这样写PreparedStatement stmt = conn.prepareStatement("desc test");如果安你那么写的话你的SQL里面必须有参数
执行的时候必须设置参数
stmt.setString(1,..);
stmt.setString(2,..);
....
然后才可以执行~
try{
DriverManager.registerDriver((Driver) Class.forName("oracle.jdbc.driver.OracleDriver").newInstance());
conn = DriverManager.getConnection(connectionString, username,password);
PreparedStatement stmt = conn.prepareStatement("desc ?");
stmt.setString(1,"test");
ResultSet rset = stmt.executeQuery();
while(rset.next()){ }应该也可以!
改成
ResultSet rset = stmt.execute();试试看
我想desc xxxx 只能用execute(),他并不是一个查询语句。
而execute()的返回值是boolean类型。
boolean success=stmt.execute();如果你想查询关于表xxxx的信息用恐怕要查询oracle的数据字典(data dictionary)表来获取相关的表信息。
郁闷