用odbc的例子我有一个,不过你得先装了mysql的odbc:
//: c15:jdbc:Lookup.java
// Looks up email addresses in a
// local database using JDBC.
import java.sql.*;
public class Lookup {
public static void main(String[] args)
throws SQLException, ClassNotFoundException {
String dbUrl = "jdbc:odbc:javaTest";
String user = "";
String password = "";
// Load the driver (registers itself)
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
} catch (java.lang.ClassNotFoundException e) {
System.err.println("ClassNotFoundException");
System.err.println(e.getMessage());
}
try {
Connection c = DriverManager.getConnection(dbUrl, user, password);
Statement s = c.createStatement();
// SQL code:
ResultSet r = s.executeQuery("select * from jtest");
ResultSetMetaData rm = r.getMetaData();
DatabaseMetaData cm = c.getMetaData();
System.out.println("Driver " + cm.getSearchStringEscape());
System.out.println(cm.getSQLKeywords());
System.out.println(cm.getStringFunctions());
int cols = rm.getColumnCount();
cols = 0;
for (int i = 1; i <= cols; i++) {
if (i > 1) {
System.out.println();
}
System.out.println(rm.getColumnLabel(i) + "(" + rm.getColumnTypeName(i) + ":" + rm.getColumnType(i) + ")");
System.out.println("belongto:" + rm.getTableName(i));
System.out.println("caseSensitive?" + rm.isCaseSensitive(i));
System.out.println("writable?" + rm.isWritable(i));
System.out.println("autoinc?" + rm.isAutoIncrement(i));
System.out.println("signed?" + rm.isSigned(i));
}
//System.out.println(rm.getColumnType(2));
while(r.next()) {
// Capitalization doesn't matter:
String ip = r.getString("ip");
if(r.wasNull()) System.out.println("\nNULL\n");
System.out.println(
ip + " @ "
+ r.getDate("time"));
}
s.close(); // Also closes ResultSet
} catch (SQLException ex) {
System.err.println("SQLException: " + ex.getMessage());
}
}
} ///:~mysql> desc jtest;
+-------+----------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+----------+------+-----+---------+----------------+
| ip | char(15) | YES | | NULL | |
| time | datetime | YES | | NULL | |
| id | int(11) | | PRI | NULL | auto_increment |
+-------+----------+------+-----+---------+----------------+
3 rows in set (0.06 sec)
//: c15:jdbc:Lookup.java
// Looks up email addresses in a
// local database using JDBC.
import java.sql.*;
public class Lookup {
public static void main(String[] args)
throws SQLException, ClassNotFoundException {
String dbUrl = "jdbc:odbc:javaTest";
String user = "";
String password = "";
// Load the driver (registers itself)
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
} catch (java.lang.ClassNotFoundException e) {
System.err.println("ClassNotFoundException");
System.err.println(e.getMessage());
}
try {
Connection c = DriverManager.getConnection(dbUrl, user, password);
Statement s = c.createStatement();
// SQL code:
ResultSet r = s.executeQuery("select * from jtest");
ResultSetMetaData rm = r.getMetaData();
DatabaseMetaData cm = c.getMetaData();
System.out.println("Driver " + cm.getSearchStringEscape());
System.out.println(cm.getSQLKeywords());
System.out.println(cm.getStringFunctions());
int cols = rm.getColumnCount();
cols = 0;
for (int i = 1; i <= cols; i++) {
if (i > 1) {
System.out.println();
}
System.out.println(rm.getColumnLabel(i) + "(" + rm.getColumnTypeName(i) + ":" + rm.getColumnType(i) + ")");
System.out.println("belongto:" + rm.getTableName(i));
System.out.println("caseSensitive?" + rm.isCaseSensitive(i));
System.out.println("writable?" + rm.isWritable(i));
System.out.println("autoinc?" + rm.isAutoIncrement(i));
System.out.println("signed?" + rm.isSigned(i));
}
//System.out.println(rm.getColumnType(2));
while(r.next()) {
// Capitalization doesn't matter:
String ip = r.getString("ip");
if(r.wasNull()) System.out.println("\nNULL\n");
System.out.println(
ip + " @ "
+ r.getDate("time"));
}
s.close(); // Also closes ResultSet
} catch (SQLException ex) {
System.err.println("SQLException: " + ex.getMessage());
}
}
} ///:~mysql> desc jtest;
+-------+----------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+----------+------+-----+---------+----------------+
| ip | char(15) | YES | | NULL | |
| time | datetime | YES | | NULL | |
| id | int(11) | | PRI | NULL | auto_increment |
+-------+----------+------+-----+---------+----------------+
3 rows in set (0.06 sec)
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货