存储过程定义:是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中。
存储过程可由应用程序通过一个调用来执行,而且允许用户声明变量 。同时,存储过程可以接收和输出参数、返回执行存储过程的状态值,也可以嵌套调用。存储过程的能力大大增强了SQL语言的功能和灵活性。使用存储过程还可保证数据的安全性和完整性。
存储过程分三种:系统存储过程,以sp_开头;扩展存储过程,以XP_开头;用户自定义的存储过程。
存储过程定义:
create proc [存储过程名] --自定义
@[参数] 参数类型,
@[参数] 参数类型 output, --有输入输出
as
(sql 语句)
调用存储过程
declare @id int
exec 存储过程名 参数名 print @id
存储过程的3种传回值: 1)、以Return传回整数 2)、以output格式传回参数 3)、Recordset
vs2005中调用存储过程:
CREATE PROCEDURE AddCar
@PayCar varchar(50),
@XiuLi varchar(50),
@DateTime varchar(50)
AS
insert into CTable values(@PayCar,@XiuLi,@DateTime)
GO
cs代码
con.Open();
com = new SqlCommand("AddCar", con);
com.CommandType = CommandType.StoredProcedure;
com.Parameters.AddWithValue("@PayCar", PayCar);
com.Parameters.AddWithValue("@XiuLi", XiuLi);
com.Parameters.AddWithValue("@DateTime", addtme);
com.ExecuteNonQuery();
con.Close();
vs2008调用存储过程
SqlConnection con= new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["conn"]);
con.Open();
SqlDataAdapter sda = new SqlDataAdapter("存储过程的名字",con);
sda.SelectCommand.CommandType = CommandType.StoredProcedure;
DataSet ds = new DataSet();
strselect.Fill(ds);
DlstBuycatalog.DataSource =ds;
DlstBuycatalog.DataBind();
con.Close();
韩婉婉