com.mysql.jdbc.sqlerror.createsqlexception_at com.mysql.jdbc.SQLError.createSQLException(SQLError.ja...

错误提示是这样的:java.sql.SQLExceptionatcom.mysql.jdbc.SQLError.createSQLException(SQLError.java:1055)atcom.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)atco...

错误提示是这样的:

java.sql.SQLException

at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1055)

at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)

at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:926)

at com.mysql.jdbc.ResultSetImpl.checkRowPos(ResultSetImpl.java:815)

at com.mysql.jdbc.ResultSetImpl.getStringInternal(ResultSetImpl.java:5528)

at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5448)

at com.notebook.struts.action.ShowAction.execute(ShowAction.java:60)

at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)

at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)

at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)

at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

相关的action 代码如下:

public ActionForward execute(ActionMapping mapping, ActionForm form,

HttpServletRequest request, HttpServletResponse response) {

try

{

Class.forName("com.mysql.jdbc.Driver").newInstance();

String url = "jdbc:mysql://localhost:3306/notebook";

Connection con = DriverManager.getConnection(url, "root", "root");

Statement st=con.createStatement();

ResultSet rs=st.executeQuery("select * from notebook");

ArrayList list=new ArrayList();

while(rs!=null)

{

Note note=new Note();

note.setName(rs.getString("name"));

note.setTitle(rs.getString("title"));

note.setContent(rs.getString("comment"));

note.setEmail(rs.getString("email"));

note.setTime(rs.getString("time"));

rs.next();

list.add(note);

}

for(int count=0;count

{

System.out.println(((Note)(list.get(count))).getName());

}

// HttpSession session=request.getSession();

// session.setAttribute("note", );

if(rs!=null)

rs.close();

if(st!=null)

st.close();

if(con!=null)

con.close();

}

catch(Exception e)

{

e.printStackTrace();

}

return mapping.findForward("display");

}

}

我的数据库表名字是对的,notebook,表项为name,email,title,Comments,time 感觉上应该是rs.getstring()这里错了,不过错在哪里了?

展开

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 这个错误提示意味着在 MySQL JDBC 驱动程序中发生了一个 SQL 异常。原因可能是 SQL 语句本身存在语法错误,或者执行 SQL 语句时发生了其他错误。你可以通过查看异常堆栈信息,找到更具体的错误信息。另外,你还可以尝试在 SQL 语句执行之前打印出 SQL 语句本身,以便更好地识别出问题。如果仍然无法解决问题,可以考虑使用 SQL 调试工具来辅助调试。 ### 回答2: at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException 是一个Java程序中的异常错误。它是由MySQLJDBC驱动程序(CJ驱动程序)抛出的。当在连接到MySQL数据库时发生错误时,这个异常会被抛出。 在具体情况下,这个异常可能有几种不同的原因。首先,可能是由于数据库连接参数的配置错误引起的。如果用户名、密码、主机名或端口号等连接参数不正确,就会抛出这个异常。其次,可能是由于网络问题或MySQL服务器无法访问造成的。如果网络连接中断或MySQL服务器没有运行,就会导致这个异常被抛出。此外,还可能是由于MySQL服务器上的某些限制,如连接数限制或资源限制,导致这个异常发生。 要解决这个异常,首先需要检查连接参数是否正确设置。确保用户名、密码、主机名和端口号与MySQL数据库的配置匹配。其次,检查网络连接是否正常,并确保MySQL服务器正在运行。如果连接参数和网络都没有问题,那就可能是由于服务器上的一些限制导致的。尝试增加连接数或调整资源限制可以解决这个问题。 总而言之,异常"at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException"是由MySQLJDBC驱动程序抛出的,表示在连接到MySQL数据库时发生了错误。通过检查连接参数、网络连接和服务器限制,可以解决这个异常。 ### 回答3: at com.mysql.cj.jdbc.exceptions.SQLError.createSQLExceptionMySQL Connector/J(一个用于连接Java应用程序和MySQL数据库的驱动程序)中的一个方法,用于创建一个SQL异常。 当发生数据库操作方面的错误时,该方法会被调用来创建一个SQL异常对象。这个异常对象包含了错误的详细信息,例如错误代码、错误消息、错误发生的位置等。 这个方法的主要作用是方便开发者在程序中捕获并处理数据库操作的异常。在程序中,我们可以使用try-catch语句块来捕获这个异常,并根据需要进行处理,例如打印错误信息、回滚事务等操作。 通过这个方法,MySQL Connector/J提供了一种标准的异常处理机制,使得我们可以更好地处理数据库操作中的错误情况,保证程序的稳定性和可靠性。 虽然具体的使用方法和处理方式取决于具体的应用场景和开发需求,但总体来说,at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException作为MySQL Connector/J的核心方法之一,对于处理数据库操作异常起到了重要的作用。因此,在使用MySQL Connector/J进行数据库开发时,我们经常会遇到这个方法的调用和处理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值