读书人

java怎么调用sql过程以及接收sql中没指

发布时间: 2012-01-10 21:26:51 作者: rapoo

java如何调用sql过程以及接收sql中没指明output返回的参数值
CREATE PROCEDURE AMadAdd

@UserID int,
@Title varchar(100),
@adUrl text,
@enddatetime datetime,
@IsLock bit

AS

declare
@err varchar(50)

begin tran
set nocount on

insert into adTa (UserID,Title,adUrl,enddatetime,IsLock) values (@UserID,@Title,@adUrl,@enddatetime,@IsLock)

if @@error=0
begin
commit tran
return 1
end
else
begin
rollback tran
set @err= '添加广告时出错 '
exec logAdd '添加广告出错 ',@err
return 0
end

set nocount off
GO


在java中怎么样调用这个sql存储过程,还有就是我再存储过程中里的参数没有指明有output这个输出参数的。但我下面有返回return 1或0的。再net中是可以这样接收的到的(看过以前同学是这样子作的)。但再java中我一时没搞清楚。毕进我现在是初学java所以有这个问题请各位多多指教

[解决办法]
Class.forName( "com.mysql.jdbc.Driver ");
Connection myConn = DriverManager.getConnection( "jdbc:mysql://localhost:3306/mysql ", "root ", "19830102 ");
String query= "call AMadAdd () ";


CallableStatement stmt = myConn.prepareCall(query);
ResultSet rs = stmt.executeQuery();
if(rs.next()) {
System.out.println(rs.getInt(1));
}


上面是调用mysql 存储过程的代码

可以参考一下

读书人网 >J2SE开发

热点推荐