用Jsp连接Access数据库还用装驱动吗

用Jsp连接Access数据库还用装驱动吗,第1张

不用 这个问题baidu搜一下就可以了吧

比如:

String strurl="jdbc:odbc:driver={Microsoft Access Driver (mdb)};DBQ=H:/Tomcat41/Tomcat 41/webapps/examples/jsp/lyb/%22datamdb;";

完整的是:

String strurl="jdbc:odbc:driver={Microsoft Access Driver (mdb)};DBQ=mdb;USERID=;PWD=";

连接名称:自己起个名字就行

驱动程序:sunjdbcodbcJdbcOdbcDriver

URL:jdbc:odbc:DRIVER={Microsoft Access Driver (mdb)};DBQ=F:\\Db_ColligateStatistic\\ColligateStatisticmdb;

用户名:admin

密码:不用填

几个问题

首先,你是MS access数据库,那就缺少access驱动和地址路径

其次,你在构造函数的时候已经建立了connection和statement,下面的方法你又加上,那构造函数里的就没有意义了

第三,sql语句不严格,缺少;结尾

第四,在你的定义中,excute只能执行查询语句,因为他要返回一个resultset,如果你是删除,更改,创建那就需要使用excuteUpdate(sql)的句法了

第五,只有rs关闭,没有stmt,conn的关闭,产生内存滞留

第六,异常抛出没有处理

综合以上几点,无论是程序设计,代码归法都不合格。

下面附access 可复用代码

import javasql;

public class dbAction

{

String sDBDriver = "sunjdbcodbcJdbcOdbcDriver";

String sConnStr = "jdbc:odbc:bka";

String dbq = "DBQ=E:\\Java\\database\\dbmdb";

String driver = "Driver={Microsoft Access Driver (mdb)}";

String connectionString = "jdbc:odbc:"+driver+";"+dbq;

Connection conn = null;

Statement stmt = null;

ResultSet rs = null;

public dbAction(){

try {

ClassforName(sDBDriver);

}

catch(javalangClassNotFoundException e) {

Systemerrprintln("bka(): " + egetMessage());

}

}

public ResultSet executeQuery(String sql) {

rs = null;

try {

conn = DriverManagergetConnection(connectionString);

stmt = conncreateStatement(ResultSetTYPE_SCROLL_SENSITIVE,ResultSetCONCUR_UPDATABLE);

rs = stmtexecuteQuery(sql);

}

catch(SQLException ex) {

Systemerrprintln("aqexecuteQuery: " + exgetMessage());

}

return rs;

}

public Boolean updateQuery(String sql) {

rs = null;

boolean su;

try {

conn = DriverManagergetConnection(connectionString);

stmt = conncreateStatement(ResultSetTYPE_SCROLL_SENSITIVE,ResultSetCONCUR_UPDATABLE);

stmtexecuteUpdate(sql);

su = true;

}

catch(SQLException ex) {

Systemerrprintln("aqexecuteQuery: " + exgetMessage());

su=false;

}

return su;

}

public void closeStmt()

{

try

{

stmtclose();

}

catch (SQLException e)

{

// TODO Auto-generated catch block

eprintStackTrace();

}

}

public void closeLink()

{

try

{

connclose();

}

catch (SQLException e)

{

// TODO Auto-generated catch block

eprintStackTrace();

}

}

}

经无数测试与使用,完全可执行。

记得更改你的绝对地址路径,还要记得rs执行完后关闭是stmt和conn。

其实可以不用装,可以连到网络上的ACCESS,但一定要有ACCESS给你连。

F:\tomcat\work\DEFAULT\ROOT\DB_1java:105: 'try' without 'catch' or 'finally'

他说你 DB_1 这个类105行try完没有catch或者finally哦;Type expected,他说“}”这个东西不知道是啥!!你要改改 DB_1 这个类;你的jsp没错,只不过少些了一个e:

rs=stmtexcuteQuery("select from student");

应该是:

rs=stmtexecuteQuery("select from student");

-------------^

以上就是关于用Jsp连接Access数据库还用装驱动吗全部的内容,包括:用Jsp连接Access数据库还用装驱动吗、我想问你关于jsp中用DW连接access的问题、jsp连接access出错的问题--囧等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9738724.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存