📄 testbridge.java
字号:
package MyNa.utils;
import java.sql.*;
/*
javac TestBridge.java
java MyNa.utils.TestBridge
java MyNa.utils.TestBridge phonebook "select * from phonebook"
or even
java MyNa.utils.TestBridge phonebook "create table testtab..."
and so on; we test a jdbcOdbc connection to the indicated
database, defaulting to PHONEBOOK (which may not exist),
and optionally enter a query. If you want to use this interface
to populate a database file with tables for testing, feel free;
just run it within a batch file and
*/
public class TestBridge{
static String driverName="sun.jdbc.odbc.JdbcOdbcDriver";
public static void main(String[] args){
String dbName=(args.length>0)?args[0]:"PHONEBOOK";
dbName="jdbc:odbc:"+dbName;
try {Class.forName(driverName);
}catch (Exception E) {
System.err.println("Unable to load driver "+driverName);
E.printStackTrace();
}
try {
System.out.println("trying to connect to "+dbName);
Connection C = DriverManager.getConnection(dbName);
DatabaseMetaData dbmd=C.getMetaData();
ResultSet RS = dbmd.getTables(null,null,null,null);
String[][]A=MiscDB.resultRowsToStringMatrix(RS);
for(int i=0;i<A.length;i++)
System.out.println(Misc.stringArrayJoin(A[i],",\t"));
if(args.length>=2){
Statement S = C.createStatement();
String Q=args[1];
System.out.println("Query = ["+Q+"]");
boolean hasRS=S.execute(Q);
System.out.println("did Query, hasResultSet="+hasRS);
if(hasRS){
RS=S.getResultSet();
A=MiscDB.resultRowsToStringMatrix(RS);
for(int i=0;i<A.length;i++)
System.out.println( Misc.stringArrayJoin(A[i],",\t"));
}else System.out.println("changed "+S.getUpdateCount()+" rows");
S.close();
}
C.close();
}catch (SQLException E) {
System.out.println("SQLException: " + E.getMessage());
System.out.println("SQLState: " + E.getSQLState());
System.out.println("VendorError: " + E.getErrorCode());
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -