为什么数据有时能添加到数据库,有时不能?

wangpanbaoding 2011-05-23 10:59:08
<%
String suser=new String(request.getParameter("user").getBytes("8859_1"));
String szu=new String(request.getParameter("zu").getBytes("8859_1"));
String spassword=new String(request.getParameter("password").getBytes("8859_1"));
String spassword2=new String(request.getParameter("password2").getBytes("8859_1"));
String srname=new String(request.getParameter("rname").getBytes("8859_1"));
String ssex=new String(request.getParameter("sex").getBytes("8859_1"));
String sphone=new String(request.getParameter("phone").getBytes("8859_1"));
String saddress=new String(request.getParameter("address").getBytes("8859_1"));
%>
<%
String str="insert into USER (UNAME,UCLASS,UPASSWORD,URNAME,USEX,UPHONE,UADDRESS) values('"+ suser +"','"+ szu+ "','"+ spassword +"','"+ srname +"','"+ ssex +"',"+ sphone +",'"+ saddress +"')";
AddBean.executeUpdate(str);
out.println(str);
%>

输出sql语句是正确的,真是弄不懂~
...全文
144 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
凯瑞甘 2011-05-26
  • 打赏
  • 举报
回复
把不能插入数据时的异常贴出来啊
Spring89 2011-05-25
  • 打赏
  • 举报
回复
在贴代码时选择java代码吧, 这样看的很吃力!
meteor1015 2011-05-25
  • 打赏
  • 举报
回复
catch (SQLException e) { 这个全部修改为 catch (Exception e) { 没有插入记录时应该可以打印出错误信息了
wangjianqiang24 2011-05-25
  • 打赏
  • 举报
回复
好像很难啊 我们才开始学习 没有完全调呢
wangpanbaoding 2011-05-25
  • 打赏
  • 举报
回复
还是没有解决,谢谢大家帮忙
jnhcd 2011-05-24
  • 打赏
  • 举报
回复
除了一些异常,看有没有commit
ndsc1211 2011-05-24
  • 打赏
  • 举报
回复
lz你的代码虽然很短,但看着也是比较费劲的,你可以吧多条语句放在一个try catch里边
wangpanbaoding 2011-05-24
  • 打赏
  • 举报
回复
package opendb;

import java.sql.*;

//import java.lang.*;
public class opendb
{

String sDBDriver="sun.jdbc.odbc.JdbcOdbcDriver";
String sConnStr="jdbc:odbc:jsp";
Connection conn=null;
Statement stmt=null;
ResultSet rs=null;

public opendb()
{
try
{
Class.forName(sDBDriver);
}

catch(java.lang.ClassNotFoundException e)
{
System.err.println("opendb():"+e.getMessage());
}

}

public ResultSet executeQuery(String sql)
{
rs=null;
try
{
conn=DriverManager.getConnection(sConnStr);
Statement stmt=conn.createStatement();
rs=stmt.executeQuery(sql);
}

catch(SQLException ex)
{
System.err.println("aq.executeQuery():"+ex.getMessage());
}
return rs;
}
public void executeUpdate(String sql)
{
stmt=null;
rs=null;
try
{
conn=DriverManager.getConnection(sConnStr);
stmt=conn.createStatement();
stmt.executeQuery(sql);
stmt.close();
conn.close();
}
catch(SQLException ex)
{
System.err.println("aq.executeQuery():"+ex.getMessage());
}
}
public void closeStmt()
{
try
{
stmt.close();
}
catch(SQLException e)
{
e.printStackTrace();
}
}

public void closeConn()
{
try
{
conn.close();
}
catch(SQLException e)
{
e.printStackTrace();
}
}

}
这是bean里的代码。
weihe_007 2011-05-23
  • 打赏
  • 举报
回复
不能插入时报的是什么错呢.要找到对应的信息去排错
Spring89 2011-05-23
  • 打赏
  • 举报
回复
如果说不能添加到数据库,那么应该会有异常出现!光贴部份代码是看不出来的!
AddBean的executeUpdate()也弄出来看看!如果有异常也贴出来!
如果没有异常那么只能debug了。

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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