您的位置:首页 > 数据库

使用JDBC访问数据库的相关问题

2014-02-27 13:21 495 查看
1、JDBC(java database connectivity)是Sun公司提供的统一方式访问数据库的API;

开发时候,需要把对应的JAR文件添加到CLASSPATH环境变量中,使用jsp开发只需要把JAR文件添加到Web应用的WEN-INF/lib目录下就可以。对于Tomcat来说,这个目录就是其安装目录下的common/lib目录下。

2、Mysql驱动程序只包含一个文件:mysql-connector-java.jar;sqlserver 包含三个jar文件。

3、JDBC常用的接口;

      1、java.sql.Driver 读取数据驱动,提供链接方法,建立访问数据库所用的Connection对象。

      2、java.sql.DrierManager类是java.sql包中用于数据库驱动管理的一个类,作用于用户和驱动之间。 static Conncetion getConnection(String url, String user,       String          password)管理driver对象,链接数据库,注册驱动程序,获取链接,向数据库发送信息等。返回一个Connection 对象。

     3、java.sql.Connection 用于数据库链接对象,对数据库的一切操作都是在这个连接基础上进行的。statement createStatement(),创建一个对象,用来执行不带参数的sql查询。 void close();用于关闭当前的连接。

     4、java.sql.Statement;  Statement用于在已经建立好连接的基础上进行的,他只是一个接口的定义,包括执行了sql语句和获取返回值的方法。

         ResultSet executeQuery(String sqlQuery),执行给定字符串中的sql语句,并返回一个用于查看查询结果的ResultSet对象。

         int executeUpdate(String sqlStatement),执行字符串中,给定的insert,update,delete等sql语句,还可以执行数据定义语言(DDL)语句。

        boolean execute(String sqlStatement),执行字符串中给定的SQL语句,如果返回一个结果集,则返回true,否则false,使用getResultSet或getUpdateCount方法得到结果。

       int getUpdateCount(),返回前一条更新语句影响的结果记录数。

       ResultSet getResultSet(),返回前一条查询语句的结果集。

       void close(),关闭Statement对象及其所对应的结果集。

       5、java.sql.ResultSet          ResultSet用来暂时存放数据库查询操作获得的结果集。

         boolean next(),将结果集的当前航向前移动一行,达到最后返回false ,反之返回true;

3、JDBC的访问步骤

            一.装在驱动程序     二、定义索要链接的数据库的地址        三、与数据库建立链接       四、建立语句对象  五、声明并执行SQL语句   六、对结果集进行整理  七、关闭对象

             1、装载驱动,  语法:Class.forName("JDBC驱动程序类");

                             使用JDBC-ODBC桥驱动程序:sun.jdbc.odbc.JdbcDriver

                             使用mysql的驱动程序:com.mysql.jdbc.Dirver

                              使用SQL Server的驱动程序:com.mircrosoft.jdbc.sqlserver.SQLServerDriver

                            使用ORCAL的驱动程序:orcal.jdbc.driver.OracleDriver

                            使用DB2的驱动程序:com.ibm.db2.jdbc.app.DB2Driver

            2、定义所需要数据库的地址

                          String ODBCURL="jdbc:odbc:dbname"

                            String MySQLURL="jdbc:mysql://host:port/dbName"

                            String SQLServerURL="jdbc:microsoft:sqlserver://host:1433;DatabaseName=dbName"

                            String orcaleURL="jdbc:oracle:thin:@host:port:dbName"

              3、与数据库的链接

                     使用如下语句建立链接:

                  Connection con = DeriverManage.getConnection(url,Login,password);

                    例如:链接Mysql的book数据库,用户名为root,密码是root

                              String driverStr="com.mysql.jdbc.Driver"

                              String connStr="jdbc:mysql://localhost:3306/book"

                             Class.forName(driverStr);

                              Connection conn=DriverManager.getConnection(connstr,"root","root");

                   4、建立语句对象,利用Connection接口的createStatement()方法创建语句对象

                   例如:Statement stmt=con.creteStatement();

                   5、声明语句

                   String sql="select * from book";

                   ResultSet rs=stmt.executeQuery(sql);

                   6、对结果集进行处理

                          如果第一个字段为name为文本型,第二个是score,Float型

                         while(rs.nexe()) {

                                 name=rs.getString(1);  score=rs.getFloat(2); System.out.pringln(name +" " +score);                   

                                 }

                         (略)

                   7、关闭对象。注意:关闭顺序是,ResultSet            Statement   Connection的顺序依次关闭。

操作数据库

Connection conn=null;  ResultSet rs=null;

使用PreparedStatement  pstmt来声明数据库的操作。

String sql="select name from user where userid=? and password=?";

pstmt=conn.prepareStatement(sql);

pstmt.setString(1,request.getParameter("id"));

pstmt.setString(2,request.getParameter("password"));

rs=pstmt.executeQuery();

综上花了一大中午的时间,给大家整理了下。也是辛苦啊。希望对大家有用。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息