2010-04-07 78 views
14

讓我對個人項目感到憤怒;我知道我以前做過這個,但在其他地方並沒有代碼。據我所知,我正在設置參數,我正在設置它的值,連接是打開的,但是當我嘗試填充數據集時,出現錯誤「過程或函數期望參數」@test「,它是不提供'。程序或函數期望沒有提供的參數

(這顯然是一個簡化的測試在這個或真,而較長的代碼同樣的錯誤,但!)

C#:

SqlCommand l_oCmd; 
DataSet l_oPage = new DataSet(); 

l_oCmd = new SqlCommand("usp_test", g_oConn); 
l_oCmd.Parameters.Add(new SqlParameter("@test", SqlDbType.NVarChar)); 
l_oCmd.Parameters[0].Value = "hello world"; 

SqlDataAdapter da = new SqlDataAdapter(l_oCmd); 
da.Fill(l_oPage); 

SQL:

create procedure usp_test 
(
    @test nvarchar(1000) 
) 
as 
select @test 

什麼都有我錯過了?

+0

如果你只是使用會發生什麼:'l_oCmd.Parameters.Add(新的SqlParameter(「@考」,「世界你好」));' – tloflin 2010-04-07 23:38:07

+0

完成兩者不相同每個方面。 – eftpotrm 2010-04-07 23:45:48

回答

39

更改命令類型程序

+1

深夜編碼,腦褪色 - 謝謝:-) – eftpotrm 2010-04-07 23:38:03

+1

呃,應該抓住那個。那讓我瘋狂。 – 2011-12-21 18:26:08

+1

很久沒有ADO.Net。 (這是我的藉口,我堅持下去) – davewilliams459 2012-08-09 18:50:28

相關問題