CREATE  PROCEDURE AMadAdd @UserID int,
@Title varchar(100),
@adUrl text,
@enddatetime datetime,
@IsLock bitASdeclare
@err varchar(50)begin tran
set nocount oninsert 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
endset nocount off
GO
在java中怎么样调用这个sql存储过程,还有就是我再存储过程中里的参数没有指明有output这个输出参数的。但我下面有返回return 1或0的。再net中是可以这样接收的到的(看过以前同学是这样子作的)。但再java中我一时没搞清楚。毕进我现在是初学java所以有这个问题请各位多多指教

解决方案 »

  1.   

    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 存储过程的代码可以参考一下