编写和使用存储过程
只读 带参数的查询
只读
以下代码示例创建一个只返回表的存储过程。
CREATE Procedure GetAuthors AS
SELECT * FROM Authors
return
GO
protected void Page_Load(Object Src, EventArgs E)
{
SqlDataAdapter da = new SqlDataAdapter("Ten Most Expensive Products", conn);
da.SelectCommand.CommandType = CommandType.StoredProcedure; //设置存储过程
DataSet ds = new DataSet();
da.Fill(ds, "产品");
dg.DataSource=ds.Tables["产品"].DefaultView;
dg.DataBind();
}
将存储过程的参数作为特殊查询传递,如下面的示例所示。
可以创建同样接受参数的存储过程。例如:
CREATE Procedure LoadPersonalizationSettings (@UserId varchar(50)) AS
SELECT * FROM Personalization WHERE UserID=@UserId
return
GO
public void GetEmployees_Click(Object sender, EventArgs E)
{
SqlDataAdapter da = new SqlDataAdapter("SalesByCategory", conn);
da.SelectCommand.CommandType = CommandType.StoredProcedure; //设置存储过程
da.SelectCommand.Parameters.Add(new SqlParameter("@CategoryName", SqlDbType.NVarChar, 15));
da.SelectCommand.Parameters["@CategoryName"].Value = SelectCategory.Value;
da.SelectCommand.Parameters.Add(new SqlParameter("@OrdYear", SqlDbType.NVarChar, 4));
da.SelectCommand.Parameters["@OrdYear"].Value = SelectYear.Value;
DataSet ds = new DataSet();
da.Fill(ds, "销售额");
MyDataGrid.DataSource=ds.Tables["销售额"].DefaultView; MyDataGrid.DataBind();
}
posted on 2005-11-03 19:06
Chark 阅读(915)
评论(0) 编辑 收藏