有人可以告诉我,我怎么能检查是否使用Java数据库连接Microsoft Access中存在的表。搜索后,我去类似 如果不ISNULL(使用DLookup(“姓名”,“MSysObjects”,“名称=‘表名’”))然后 “表中存在 我试图实现JDBC程序同样的事情检查通过JDBC
import java.sql.*;
class CheckTable{
public static void main(String [] rak){
boolean flag;
try{
flag=false;
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String dataSourceName="test";
String dbURL="jdbc:odbc:"+dataSourceName;
Connection con=DriverManager.getConnection(dbURL,"","");
Statement s=con.createStatement();
//s.execute("create table xyz (name text, hiredate date)");
//s.execute("insert into xyz values('xz1','22-dec-2005')");
// s.execute("insert into xyz values('pr','2-21-2009')");
s.execute(" If Not IsNull(DlookUp('Name','MSysObjects',"Name='xyz'")) Then "+ flag=true + ");
/*
ResultSet rs=s.getResultSet();
if (rs!=null){
while(rs.next()){
System.out.println(rs.getString(1)+rs.getString(2));
}}
*/
}
catch(Exception e){
e.printStackTrace();
}
System.out.println(" table exists :"+flag);
}
}
我得到错误在s.execute()语句请帮助我的语法。 我得到的错误是: ')'预计 表达式的非法开始 未关闭的字符文字 不是一个声明 ;如果不是IsNull(DlookUp('Name','MSysObjects','Name ='xyz'“))然后”+ flag = true +“);
什么错误? – kosa 2012-02-29 15:24:07
你可能想寻找'getMetaData'和'getTabl es' – Fionnuala 2012-02-29 15:46:18