JAVA 【ACCESS数据库能读不能写】大家救救我吧.★★【up有分,高分求解】

leijun8088 2004-10-28 10:06:37


/////////////////////////////////////////////////////////


//////这是连接数据库的文件./////////////////////////////

ACCESS数据库+java
///////////////////////////////////////////////////////

package football;
import java.sql.*;
import java.io.*;


public class DbConnection {

Connection conn = null;
Statement stmt = null;
ResultSet rset = null;

private String sDBDriver = "sun.jdbc.odbc.JdbcOdbcDriver";
private String sConnStr = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=league.mdb";

public DbConnection() {
}
public void connectionOpen()
{
try {
Class.forName(sDBDriver);
}
catch (java.lang.ClassNotFoundException e) {
System.err.println(e.getMessage());
}
}

//executeQuery and executeUpdate

public ResultSet executeQuery(String query) throws SQLException{
conn = DriverManager.getConnection(sConnStr);
stmt = conn.createStatement();
rset = stmt.executeQuery(query);
return rset;
}

public void executeUpdate(String query) throws SQLException{
stmt = conn.createStatement();
stmt.executeUpdate(query);
if(stmt != null) stmt.close();
}



public void close() throws SQLException{
if(conn != null) conn.close();
if(rset != null) rset.close();
if(stmt != null) stmt.close();
}

protected void finalize() throws Throwable{
close();
}


}
...全文
88 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
lanlanq 2004-10-29
  • 打赏
  • 举报
回复
up
jianzong2000 2004-10-29
  • 打赏
  • 举报
回复
c是什么?
String SQL = "insert into Leagues (nameOfLeague) values(\'"+c+"\')";
改成这样试试
leijun8088 2004-10-28
  • 打赏
  • 举报
回复
///////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////


这是 读取数据库的文件 ,目前读取很正常,就是不能写和更新

////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////


package football;
import java.sql.*;


public class Leagues {

//time of the match
private String nameOfLeague ;

public Leagues()
{
}

public Leagues(String nameOfLeague) {
this.nameOfLeague=nameOfLeague;
String c=this.nameOfLeague;
try
{
DbConnection db = new DbConnection();
db.connectionOpen();


////////////////////////////////////////////////////////////////////////////
// 就是这里写不进数据库///////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////


String SQL = "insert into Leagues (nameOfLeague) values('"+c+"')";

db.executeUpdate(SQL);
//db.executeQuery(SQL);
db.close();

}
catch (Exception e) {
System.out.println("Error");

}

}

public String getNameOfLeague()
{

try
{
DbConnection db = new DbConnection();
db.connectionOpen();

////////////////////////////////////////////////////////////////////////////
// 这里读取数据库正常//.///////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////


String SQL = "select * from Leagues";
//System.out.print(SQL);
ResultSet rs = db.executeQuery(SQL);
while (rs.next())
{
nameOfLeague = rs.getString("nameOfLeague");
//System.out.print(nameOfLeague);
}
rs.close();

}
catch (Exception e) {
System.out.println("Error");

}
return nameOfLeague;


}

public void setNameOfLeague(String nameOfLeague)
{
this.nameOfLeague=nameOfLeague;
String c=this.nameOfLeague;
try
{
DbConnection db = new DbConnection();
db.connectionOpen();


////////////////////////////////////////////////////////////////////////////
// 这里更新数据库错错//.///////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////



String SQL = "UPDATE Leagues SET nameOfLeague= '"+c+"'";
//System.out.print(SQL);
db.executeUpdate(SQL);
}
catch (Exception e) {
System.out.println("Error");

}

}

public static void main(String[] args) {
Leagues leagues1 = new Leagues("test");

//System.out.print(leagues1.getNameOfLeague());

}

}
leijun8088 2004-10-28
  • 打赏
  • 举报
回复
--------------------------------------------------------------------------------

1.工具-安全-用户与组权限 是正常的呀!!!!!!!!!!!!!1

---------------------------------------------------------------------------------
2.我用了catch (Exception e) {
System.out.println("Error");

}

错误信息就是"Error"

代码没有语法错误,编译通过,是在运行是出的错.

----------------------------------------------------------------------------
icy_csdn 2004-10-28
  • 打赏
  • 举报
回复
另外,报的错误信息是什么?
icy_csdn 2004-10-28
  • 打赏
  • 举报
回复
是不是权限问题
打开Access后,工具-安全-用户与组权限

看看不是不选上了插入和更新数据的权限。

50,523

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧