guoln 发表于 2012-1-5 10:49:43

Java中调用存储过程

import java.sql.*; /*** Java中调用存储过程* * @author JRunner* * 2009-10-31* * Email:JRunner@126*/public class TestProc { /** * @param 入口 * @throws ClassNotFoundException * @throws SQLException */public static void main(String[] args) throws ClassNotFoundException,SQLException { String msg = ""; Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");Connection conn = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=JRun", "sa", "");CallableStatement cs = conn.prepareCall("{call UpdateUserById(?,?,?,?,?,?)}");cs.registerOutParameter(6, Types.VARCHAR);cs.setString(1, "1");cs.setString(2, "JRunner");cs.setString(3, "JRunner");cs.setString(4, "3");cs.setString(5, "3"); cs.execute();msg = cs.getString(6); cs.close();conn.close(); System.out.println(msg);} } //---------------------------------SQL------------------------------------------------/*create database JRungo use JRungo create table t_user(u_id int identity(1,1) not null,u_name varchar(20) not null,u_password varchar(20) not null,牛尔推荐护肤品u_sex int not null,u_age int not null)go create proc UpdateUserById@u_id int,@u_name varchar(20),@u_password varchar(20),@u_sex int,@u_age int,@msg varchar(50) outputasupdate t_user set u_name=@u_name, u_password=@u_password, u_sex=@u_sex, u_age=@u_age where u_id=@u_idif(@@rowcount 0)set @msg = '成功的修改了一条数据'elseset @msg = '修改失败'go insert into t_user(u_name,u_password,u_sex,u_age) values('JRunner','JRunner',1,1) declare @msg varchar(50)exec UpdateUserById 1,'Java','Java', 2, 2, @msg outputselect @msg select * from t_user*/
页: [1]
查看完整版本: Java中调用存储过程