初学jsp大家帮忙阿

什么都不能 失业人员  2007-03-12 10:41:43
<%@ page language="java" contentType="text/html;charset=gb2312" %>
<%@ page import="java.sql.*" %>
<%
try{
Class.forName("org.gjt.mm.mysql.Driver").newInstance();
String url="jdbc:mysql://localhost/notebook?user=root&password=1234";
Connection conn=DriverManager.getConnection(url);
Statement stmt=conn.createStatement();
out.println(stmt.execute("insert into users (username) values ('ht')"));
stmt.close();
conn.close();
}
catch(SQLException e)
{
out.println("发生异常:"+e.getMessage());
}
%>
新数据已经插入数据库中
为什么结果总是false?
...全文
209 点赞 收藏 8
写回复
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
liaohaiying 2007-03-13
statement.execute()用在查询时返回数据集的
statement.executeUpdate()用在对数据库操作时成功的次数也就是行数,它返回的也不是真和假,但你可以自己判断一下,
sdfasd = false;
if(statement.executeUpdate(".........")>0)
{
sdfasd = true;
}
return sdfasd;
回复
什么都不能 2007-03-13
好,谢谢pczhouji,结贴
回复
fwqerhg 2007-03-12
用executeUpdate这个方法来进行插入操作
回复
一般很少用,如果sql语句执行结果是多个ResultSet或者更新计数时才用到。
回复
什么都不能 2007-03-12
那么statement.execute();一般应用在什么情况下?
回复
statement.execute()返回false并不代表sql语句执行失败,因为只有执行结果是ResultSet时才返回true,insert、update返回的都是false。你可以用statement.executeUpdate()代替,它返回的是更新的行数。
回复
什么都不能 2007-03-12
不是,有主键id autoincrease
回复
jgsfy 2007-03-12
username是不是主建
回复
发动态
发帖子
Web 开发
创建于2007-09-28

7.9w+

社区成员

Java Web 开发
申请成为版主
社区公告
暂无公告