连接数据库异常

小镇代码家 2008-11-21 10:57:12
/**
* 插入新的新闻
* @param id
* @return
*/
public boolean insert(News news) {
boolean flag = false;
Connection conn = null;
sqlStr = "insert into news (title,author,from,content,postDate) values ('";
sqlStr += news.getNTitle() + "','";
sqlStr += news.getNAuthor() + "','";
sqlStr += news.getNFrom() + "','";
sqlStr += news.getNContent() + "','";
sqlStr += new java.sql.Date(new java.util.Date().getTime()) + "')";
try {
conn = this.getConnection();
pstmt = conn.prepareStatement(sqlStr);
int i = pstmt.executeUpdate(); //<--这里
if(0 != i) {
flag = true;
conn.commit();
}
} catch (SQLException e) {
e.printStackTrace();
try {
conn.rollback();
} catch (SQLException sqle) {
sqle.printStackTrace();
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
pstmt.close();
conn.close();
} catch(SQLException e) {
e.printStackTrace();
}
}
return flag;
}
程序运行指定位置代码时发生异常。通过Eclipse的dubug发现提交的查询语句中文部分都乱码了。
重点是在这条代码之前的sqlStr都是正常的,没有出现乱码。
我该怎么解决?
...全文
50 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
小镇代码家 2008-11-22
  • 打赏
  • 举报
回复
直接在MySql中用sqlStr的语句尝试了下,同样提示错误。
把 insert into news (title,author,from,content,postDate)
中的列名一个个的删除再试,结果是在"from"这个位置问题不出现。火了,把"from"改名,
居然运行正常了...
不知道为什么 -_-!
小镇代码家 2008-11-21
  • 打赏
  • 举报
回复
用?那种方式乱码之后才换成现在这种的,都是在同一个地方出现异常。
bruni 2008-11-21
  • 打赏
  • 举报
回复
preparedStatement一般都是用?代替参数

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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