2009-10-07 79 views
0

我正在使用ASP.NET和SQL Server 2005.使用QueryString並將值存儲在存儲過程中?

我知道如何創建一個存儲的過程,但我不知道當我需要使用QueryString時,在存儲過程中放置​​什麼。在CODE

我的SQL語句=

"SELECT * FROM TableName WHERE ID = '" + Request.QueryString("ID") + "'" 

現在我應該怎麼在我的存儲過程的地方得到這個工作?我想調用存儲過程,因此不希望在我的代碼中使用此代碼。

在此先感謝!

+0

如何ü烏爾調用存儲過程? – 2009-10-07 10:06:15

回答

1

創建一個SqlCommand對象

設置在CommandText = 「StoredProcName」

加上與您的存儲過程的參數名稱的SqlParameter的 - 將其類型

其值設置爲的Request.QueryString(」 ID「)

檢查了這一點的完整說明:

http://support.microsoft.com/kb/306574

1

試試下面的代碼:

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); 
0
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