jsp操作access数据库

1JDBC至数据库的通信路径

2)访问数据库的方法步骤

JDBC URL的一般语法为:

jdbc: subprotocol :other stuff jdbc:<子协议>:<子名称>

  其中, subprotocol用于指明连接到数据库的特定驱动程序。othe ruff 参数的格式随所使用的subprotocol不同而不同。如果要了解具体格式,可以查阅数据库供应商提供的相关文档。

1)找到所要使用的JDBC驱动程序类的名称,如:

org.postgresql.Driver

下载相应的DB驱动

 

2将这个驱动包含在classpath中,或使用-classpath命令行启动数据库程序。

 

3)连接数据库。

   a) 注册驱动程序

  DriverManager类用于选择数据库驱动程序和创建新的数据库连接,连接后会返回一个Connection对象。不过,只有在驱动管理器中注册过的驱动程序才可以被激活。

  jdbc.drivers属性包含了一系列驱动程序的类名,驱动管理器会在启动时注册这些驱动程序。可以用通过方法调用来设置系统属性,比如:

System .setProperty("jdbcc.drivers" ,"org. postgresql.Driver") . 也可以同时添加多个驱动程序,只要用冒号将它们隔开即可.

  b) 打开数据库连接

   String url = "jdbc: postgresql :COREJAVA";

Stri ng username = "dbuser";

String password =secret ;

Connection conn = DriverManager.getConnection(url , username, password);

 

4)用sql语句对数据库进行操作(省略了异常处理)

  执行sql语句之前,首先要创建一个Statement对象

Statement stat=conn.createStatement();

   stat.execute(“CREATE TABLE Greetings(Message CHAR(20))”)

   stat.execute(“INSERT INTO Breetings VALUES(‘Hello,World!’)”);

   ResultSet result=stat.executeQuery(“SELECT * FROM Greetings”);

   result.next();  //默认指针在第一条记录之前

   System.out.println(result.getString(1));

   stat.execute(“DROP TABLE Greetings”);

   conn.close();  //断开连接

  说明:executeUpdate方法既可以执行诸如INSERT,UPDATEDELETE之类的操作,也可以执行诸如CREATE TABLEDROP TABLE之类数据定义命令。但是,执行SELECT查询时必须使用executeQuery方法。execute方法可以执行任意的SQL语句。

 

 

操作ACCESS数据库的代码如下:

  public Connection getConnToAccess()

    {

              try{

                  AccessDriver = getPara("AccessDriver");        

                  AccessURL = getPara("AccessURL");

                  AccessPath = getPara("AccessPath");

                     AccessURL=AccessURL+AccessPath;

                  Class.forName(AccessDriver).newInstance();

                  conn = DriverManager.getConnection(AccessURL);

                  }catch(Exception e){

                         //e.printStackTrace();

                         //return "操作数据库出错,请仔细检查" ;

                         //System.err.println(e.getMessage());

                  }

           return conn;

}

其中AccessDriver=sun.jdbc.odbc.JdbcOdbcDriver

AccessURL=jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=

AccessPath=F:/Program Files/apache-tomcat-6.0.18/webapps/news/WEB-INF/DreamNews.mdb

查询是:

Connection Conn = DBConn.getConn();

                  Statement stmt = Conn.createStatement(1004,1007);

                  String sql = "select * from BigClass order by BigClassID";

                  ResultSet rs = stmt.executeQuery(sql);

整理成DBtest.jsp如下:

<%@ page language="java" contentType="text/html; charset=gb2312"

    pageEncoding="gb2312"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

 

<head>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

<title>ACCESS数据库访问测试</title>

</head>

<body>

<%@ page language="java"  import="java.sql.*"%>

<%!

   Connection con=null;

%>

<%   

   try

   {   // 加载、注册JDBC驱动器类

     Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

       // 建立到数据库连接,如果设置了用户名和密码还要指出用户名和密码

     con=DriverManager.getConnection("jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=D:/ZQ/java source/Data_base/db_Test.mdb");

         //在数据库中创建表

   }

   catch(SQLException ex)

   {

       while(ex!=null)

       {

         ex.printStackTrace();

         ex=ex.getNextException();

       }       

    }

   // catch(IOException ex)

   // { ex.printStackTrace();}

   Statement stmt=con.createStatement();

   ResultSet result=stmt.executeQuery("SELECT * FROM news");

   result.next();

  

%>

  <h2>读取的第一条新闻为:<%=result.getString("cont")%></h2>

</body>

</html>

注意,当操作数据库时,如果已经通过access打开的所将操作的库、表,则会出错。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值