随笔-0  评论-0  文章-24  trackbacks-0
JDBC:Java Database Connectivity,Java数据库连接,可以方便的访问数据库接口。
JDBC驱动程序有四种类型:
1JDBC-ODBC桥,通过ODBC数据源连接
2通过网络库连接的纯Java驱动
3通过中间件服务器
4直接与数据库相连的纯Java驱动,厂商提供

JDBC包括java.sql和javax.sql两个包。数据库应用开发的基本步骤如下:
1.建立数据源,安装相应数据库
2.装载驱动程序,Class.forName("~~~")
3.建立连接,DriverManager.getConnection()
4.建立语句对象,createStatement()
5.书写具体的SQL,executeQuery("")、executeUpdate("")
6.数据处理,next()、getString
7.获取元数据,getMetaData()
8.关闭对象,close(),应该按照ResultSet - Statement - Connection的顺序关闭
9.异常处理与警告

本文采用JDBC-ODBC桥的方式连接Access数据库,将数据库文件test.mdb放到C:\Users\chen\workspace\JavaTest目录下,账户名Administrator,密码abc。数据库包括两张表,格式如下:



try {
            
// 装入驱动程序
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
            
// 设置登陆超时时间
            DriverManager.setLoginTimeout(5);
            String url 
= "jdbc:odbc:driver={MicroSoft Access Driver (*.mdb)};DBQ=C:\\Users\\chen\\workspace\\JavaTest\\test.mdb";
            
// 建立一条连接
            Connection conn = DriverManager.getConnection(url, "Administrator",
                    
"abc"); // 设置打开数据库的用户名和密码
            Statement s = conn.createStatement();
            ResultSet rs 
= s.executeQuery("SELECT * FROM Store_Information");
            ResultSetMetaData metadata 
= rs.getMetaData();
            
int count = metadata.getColumnCount();
            System.out.print(
"columns:");
            
for (int i = 1; i <= count; i++)
                System.out.print(
" " + metadata.getColumnName(i));
            System.out.println(
"\nstore_name in Store_Information:");
            
while (rs.next())
                System.out.println(rs.getString(
"store_name"));
            rs.close();
            s.close();
            PreparedStatement ps 
= conn
                    .prepareStatement(
"SELECT * FROM Geography");
            rs 
= ps.executeQuery();
            System.out.println(
"store_name in Geography:");
            
while (rs.next())
                System.out.println(rs.getString(
"store_name"));
            rs.close();
            ps.close();
            conn.close();

        } 
catch (ClassNotFoundException e1) {
            System.err.println(e1);
        } 
catch (SQLException e2) {
            System.err.println(e2);
        }

实验结果
columns: id store_name sales dates
store_name in Store_Information:
Los Angeles
San Diego
Los Angeles
Boston
store_name in Geography:
Boston
New York
Los Angeles
San Diego

源代码下载
posted on 2009-06-09 15:28 chenkkkabc 阅读(147) 评论(0)  编辑  收藏 所属分类: java特性