|
楼主

楼主 |
发表于 2005-10-26 09:38:34
|
只看该作者
Java访问SAS Metadata和SAS数据的方法
[code:04f15]import java.util.*;
import java.sql.*;
public class DataModel {
private String SASUsername = "username";
private String SASPassword = "password";
public Vector getLibraries() {
Vector libraries = new Vector();
try {
Class.forName("com.sas.rio.MVADriver");
Connection conn = DriverManager.getConnection(
"jdbc:sasiom://localhost:8591", SASUsername, SASPassword);
Statement stmt = conn.createStatement();
DatabaseMetaData meta = conn.getMetaData();
ResultSet rs = meta.getSchemas();
while (rs.next()) {
String library = rs.getString(1);
libraries.add(library);
}
rs.close();
stmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
return libraries;
}
public Vector getTables(String library) {
Vector tables = new Vector();
try {
Class.forName("com.sas.rio.MVADriver");
Connection conn = DriverManager.getConnection(
"jdbc:sasiom://localhost:8591", SASUsername, SASPassword);
Statement stmt = conn.createStatement();
DatabaseMetaData meta = conn.getMetaData();
ResultSet rs = meta.getTables(null, library, null,
new String[] { "TABLE" });
while (rs.next()) {
String table = rs.getString(3);
tables.add(table);
}
rs.close();
stmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
return tables;
}
public Vector getColumns(String library, String table) {
Vector columns = new Vector();
try {
Class.forName("com.sas.rio.MVADriver");
Connection conn = DriverManager.getConnection(
"jdbc:sasiom://localhost:8591", SASUsername, SASPassword);
Statement stmt = conn.createStatement();
DatabaseMetaData meta = conn.getMetaData();
ResultSet rs = meta.getColumns(null, library, table, null);
while (rs.next()) {
String column = rs.getString(4);
columns.add(column);
}
rs.close();
stmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
return columns;
}
public Vector getRows(String library, String table) {
Vector columns = new Vector();
try {
Class.forName("com.sas.rio.MVADriver");
Connection conn = DriverManager.getConnection(
"jdbc:sasiom://localhost:8591", SASUsername, SASPassword);
Statement stmt = conn.createStatement();
DatabaseMetaData meta = conn.getMetaData();
ResultSet rs = meta.getColumns(null, library, table, null);
while (rs.next()) {
String column = rs.getString(4);
columns.add(column);
}
rs.close();
stmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
return columns;
}
public static void main(String[] args) {
}
}[/code:04f15] |
|