我用的数据库SQLServer2000
存储过程为(没问题):
create procedure proc_enter @count int output,
@name varchar(50) ,
@password varchar(50) ,
@sex bit,
@Email varchar(50),
@re varchar(50)
as
insert into enter (name,password,sex,Email,re) values(@name,@password,@sex,@Email,@re) select @count = count(*)from enter select id,name,password,sex,Email,re from enter(等等在说)goServlet代码:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
java.sql.Connection con = DriverManager.getConnection("Jdbc:Odbc:jsp");
String sql = "{call proc_enter(?,?,?,?,?,?) }";
java.sql.CallableStatement cs = con.prepareCall(sql);
cs.registerOutParameter(1, java.sql.Types.INTEGER);//返回int
cs.setString(2, "hf");
cs.setString(3, "hflaikankan");
cs.setInt(4, 1);
cs.setString(5, "[email protected]");
cs.setString(6, "hfhahahahaha");
cs.execute();ResultSet rs = cs.getResultSet();问题就在这了大家看到上面那句红的select语句了吧,我只要去掉它这里就可以正常返回,不然count = 0
我用executeQuery()试过也不行,
为什么?
//返回out参数
int count = Integer.parseInt(cs.getObject(1).toString());
while(rs.next())
{
rs.getString(1);}....关闭连接
存储过程为(没问题):
create procedure proc_enter @count int output,
@name varchar(50) ,
@password varchar(50) ,
@sex bit,
@Email varchar(50),
@re varchar(50)
as
insert into enter (name,password,sex,Email,re) values(@name,@password,@sex,@Email,@re) select @count = count(*)from enter select id,name,password,sex,Email,re from enter(等等在说)goServlet代码:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
java.sql.Connection con = DriverManager.getConnection("Jdbc:Odbc:jsp");
String sql = "{call proc_enter(?,?,?,?,?,?) }";
java.sql.CallableStatement cs = con.prepareCall(sql);
cs.registerOutParameter(1, java.sql.Types.INTEGER);//返回int
cs.setString(2, "hf");
cs.setString(3, "hflaikankan");
cs.setInt(4, 1);
cs.setString(5, "[email protected]");
cs.setString(6, "hfhahahahaha");
cs.execute();ResultSet rs = cs.getResultSet();问题就在这了大家看到上面那句红的select语句了吧,我只要去掉它这里就可以正常返回,不然count = 0
我用executeQuery()试过也不行,
为什么?
//返回out参数
int count = Integer.parseInt(cs.getObject(1).toString());
while(rs.next())
{
rs.getString(1);}....关闭连接
楼主【huangdilei】截止到2008-07-27 19:52:56的历史汇总数据(不包括此帖):
发帖的总数量:4 发帖的总分数:90 每贴平均分数:22
回帖的总数量:3 得分贴总数量:0 回帖的得分率:0%
结贴的总数量:4 结贴的总分数:90
无满意结贴数:0 无满意结贴分:0
未结的帖子数:0 未结的总分数:0
结贴的百分比:100.00% 结分的百分比:100.00%
无满意结贴率:0.00 % 无满意结分率:0.00 %
敬礼!