黑马程序员技术交流社区

标题: 关于存储过程的问题 [打印本页]

作者: ☆丿灬北纬28°    时间: 2012-6-28 04:49
标题: 关于存储过程的问题
有这样一个存储过程
ALTER PROCEDURE MaxID
@id int OUTPUT
AS
begin
SET @id = (select MAX(ID) from 表名)
return @id
end
怎样在asp.net中获取这个id的值

作者: 许庭洲    时间: 2012-6-28 08:27
本帖最后由 许庭洲 于 2012-6-28 08:32 编辑

在后台写C#代码实现数据库传来的值:
                SqlConnection cnn = new SqlConnection();
                 cnn.ConnectionString = "Data Source = 数据源;uid=sa;pwd =  ;database=数据库名";
                 cnn.Open();//数据库连接
                 //设置存储过程参数
                  SqlParameter prm;
                  SqlCommand cmd = new SqlCommand();
                    cmd.Connection = cnn;
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.CommandText = "MaxID ";//存储过程名
                    //项目类型
                    prm = new SqlParameter();
                    prm.ParameterName = "参数名1";
                    prm.SqlDbType = SqlDbType.VarChar;
                    prm.Size = 50;
                    prm.Value = comboBox1.Text;
                    prm.Direction = ParameterDirection.Input;
                    cmd.Parameters.Add(prm);
                    ......
                   //可以继续设置参数,参数个数由存储过程的具体内容决定  
                    int iretn_id= cmd.ExecuteNonQuery();//retn_id 就是存储过程编译后返回的id




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2