Java 使用JSBC操作数据库
JDBC
1、JDBC是开发数据库引用的java API,通过JDBC,使用Java设计的程序能够执行SQL语言、获取结果、在用户界面中显示数据,并且能将所做的改动传回数据库,同时JDBC API可用于分布式异型机环境中国多种数据源之间的交互;
2、一般使用Java开发数据库应用需要用到4个主要的接口:
Driver、Connection、Statement、ResultSet,
这些接口都定义在
java.sql 中;
以下是主要步骤:
(1)加载驱动程序:
Class.forName("JDBCDriverClass");
※JDBC驱动的下载:
MySQL JDBC:
www.mysql.com/products/connector/
JDBC文件的导入:Eclipse-指定工程-构建路径(bulid path)-Java构建路径-添加外部JAR-应用;
(2)建立连接
Connection connection = DriverManager.getConnection("databaseURL");
①
MySql数据库要指定主机名,数据库名;
Connection connection = DriverManger.getConnection("jdbc:mysql://localhost/bookrama","username","password");
②
Oracle数据库要指定主机名,数据库监听输入连接请求的端口号,定位数据库的数据库名;
Connection connection = DriverManger.getConnection("jdbc:oracle:thin:@liang.armstrong.edu:1521:orcl","username","password");
③
Access数据库要先在Windows下的ODBC数据管理器创建一各ODBC数据源,在创建Connection对象:
Connection connection = DriverManager.getConnection("jdbc:odbc:ExampleMDBDSource");
(3)创建语句
Statement statement = connection.createStatement();
Connection对象是Java程序与数据库的连接通道,Statement对象时通道上的信息交换器;
(4)执行语句
执行更新操作:
ResultSet resultSet = statement.executeUpdate("QueryString");
执行查询操作:
ResultSet resultSet = statement.executeQuery("QueryString");
(5)处理ResultSet
while(resultSet.next()){
String data1 = resultSet.getString(1);
int data2 = resultSet.getInt(2);
float data3 = resultSet.getFloat(3);
}
//假定数据表有三个字段data1、data2、data3,使用ResultSet相应的getX(index)方法获取,index从1开始;
可以使用
ResultSetMete获取数据表的列行信息,详见37.3;
可以使用
DatabaseMetaData获取数据库的相关信息,详见37.3;
(6)关闭连接
connection.close();
示例代码:
3、
PreparedStatement 预编译SQL语句
4、
CallableStatement 调用记载储存在SQL中的进程和方法;
获取元数据
1、获取数据库相关信息 DatabaseMetaData
2、结果集元数据 ResultSetMetaData