使用QueryString并将值存储在存储过程中?
问题描述:
我正在使用ASP.NET和SQL Server 2005.使用QueryString并将值存储在存储过程中?
我知道如何创建一个存储的过程,但我不知道当我需要使用QueryString时,在存储过程中放置什么。在CODE
我的SQL语句=
"SELECT * FROM TableName WHERE ID = '" + Request.QueryString("ID") + "'"
现在我应该怎么在我的存储过程的地方得到这个工作?我想调用存储过程,因此不希望在我的代码中使用此代码。
在此先感谢!
答
创建一个SqlCommand对象
设置在CommandText = “StoredProcName”
加上与您的存储过程的参数名称的SqlParameter的 - 将其类型
其值设置为的Request.QueryString(” ID“)
检查了这一点的完整说明:
答
试试下面的代码:
SqlCommand mycommand = new SqlCommand("yourstoredproc", con);
mycommand.CommandType = CommandType.StoredProcedure;
mycommand.Parameters.AddWithValue("@yourparam", Request.QueryString["ID"]);
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.SelectCommand = mycommand;
DataSet dataset = new DataSet();
adapter.Fill(dataset);
答
SqlCommand cmd = new SqlCommand("storedprocedure_name",con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@parameter_of-procedure",Request.QueryString"ID"]);
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.SelectCommand = mycommand;
DataSet dataset = new DataSet();
adapter.Fill(dataset);
//using sqldatareader
SqlCommand cmd = new SqlCommand("yourstoredproc", con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@parameters_of_procedure",Request.QueryString["ID"]);
con.open()
sqldatareader dr=cmd.executereader();
gridview1.datasouce=dr;
gridview1.databind();
con.close();
+0
嗨,我没有使用gridview,我填充文本框 – Etienne 2009-10-07 10:43:35
如何ü乌尔调用存储过程? – 2009-10-07 10:06:15