java/ch/wlkl/javaExamples/ExSql.java
/*
* ExDb.java
*
* Created on 22. Januar 2004, 21:52
*/
package ch.wlkl.javaExamples;
import java.sql.*;
import java.util.*;
/**
* prepare odbc 1. create access db 2. SystemSteuerung → Verwaltung →
* Datenquellen accDb erfassen und auf DB zeigen lassen
*
* @author walter
*/
public class ExSql {
Map sqlTypes() {
Map map = new HashMap();
map.put(new Integer(Types.INTEGER), "INTEGER");
return map;
}
Connection openConn() throws Exception {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
return DriverManager.getConnection("jdbc:odbc:accDb");
}
void select() throws Exception {
Connection conn = openConn();
Statement s = conn.createStatement();
ResultSet rs = s.executeQuery("select * from family");
ResultSetMetaData me = rs.getMetaData();
for (int i = 1; i <= me.getColumnCount(); i++)
System.out.println("col " + i + " " + me.getColumnName(i) + ": "
+ me.getColumnTypeName(i) + ", c "
+ me.getColumnClassName(i));
while (rs.next()) {
for (int i = 1; i <= me.getColumnCount(); i++)
System.out.print(rs.getString(i)
+ (rs.wasNull() ? "<null> " : " "));
System.out.println("!");
}
}
void prepare() throws Exception {
Connection conn = openConn();
PreparedStatement s = conn
.prepareStatement("select * from family where vorname like '%' & ? & '%'");
/*
* ParameterMetaData pm = s.getParameterMetaData(); for (int i=1; i <=
* pm.getParameterCount(); i++) System.out.println("par " + i + " " +
* pm.getParameterClassName(i));
*/s.setString(1, "i");
ResultSet rs = s.executeQuery();
while (rs.next()) {
System.out.println(rs.getString(1) + " " + rs.getString(2));
}
}
public static void main(String[] args) {
new Java(args, new String[] { "prepare" }).invokeMethods(new ExSql());
}
}