一、注册数据库驱动程序
在对数据库进行操作之前,必须要建立程序与一个具体数据库的连接,而在连接数据库之前,必须要注册该数据库的驱动程序。完成此项工作的是DriverManager类!
public static void registerDriver(Driver driver);
这是一个静态方法,参数Driver类的对象是数据库厂商提供的数据库驱动程序。除此,还可以使用下面的方法:
Class.forName("Driver driver");
二、建立与数据库的连接
与之相关的DriverManager方法是:
public static Connection getConnection(String URL);
public static Connection getConnection(String url, String user, String password);
该方法建立一个与指定数据库的连接(通过URL),返回建立的连接,即Connection对象。Connection是一个系统定义的接口。连接时还可以制定登录数据库的账号和密码。
参数URL的格式如下:
jdbc : 子协议 : 子名称
子协议是驱动器的名称,子名称是数据库的名称。如果是位于远程服务器的数据库,还应包括主机名,端口号和数据库实例名。
当一个数据库连接创建后,就表示开始了一个数据库的会话周期。当对数据库的操作告一段落时,可通过调用connection的close()方法结束会话。
三、创建语句对象
1. 不带参数的SQL语句
创建语句对象的目的是为了向数据库发送并执行SQL语句。这一步用到了Connectiond对象的方法:
public Statement createStatement() throws SQLException
eg.
Connection con = DriverManager.getConnection("url"); //建立连接 Statement stmt = con.createStatement();
后续代码中,就可以使用stmt对象向数据库发送要执行的SQL语句。
2.带参数的SQL语句
如果一条SQL语句要执行多次,通常是使用带参数的SQL语句,可使用Connection类的prepareStatement()方法。
public PreparedStatement prepareStatement(String sql) throws SQLException
该方法会对传入的SQL进行预编译,然后存入PreparedStatement对象。
eg.
Connection con = DriverManager.getConnection(url); //建立连接 PreparedStatement ps = con.prepareStatement("UPDATE emp SET sal = sal + ? WHERE eno = ?");
上面的?表示一个参数。
PreparedStatement是一个接口,它有一下方法:
四、向数据库发送SQL语句
-----------------------SELECT----------------------------
public ResultSet executeQuery(String sql) throws SQLException
参数sql是select语句,返回一个ResultSet对象,保存查询结果(多行多列)。
ResultSet是一个借口,它有一个指针,指向结果集的当前行。
----------------------INSERT,UPDATE,DELETE------------------------
public in excuteUpdate(String sql) throws SQLException
返回一个整型,表示本次执行实际操作的行数。
原文:http://www.cnblogs.com/lqzzang/p/5154877.html