Wkurzenie mnie na osobisty projekt; Wiem, że zrobiłem to wcześniej, ale gdzie indziej i nie mam kodu. O ile widzę, ustawiam parametr, ustawiam jego wartość, połączenie jest otwarte, ale kiedy próbuję wypełnić zestaw danych, pojawia się błąd "Procedura lub funkcja oczekuje parametru" @ test ", który był brak w zestawie'.Procedura lub funkcja oczekuje parametru, który nie został dostarczony.
(Jest to oczywiście uproszczony Test ten sam błąd na tej lub rzeczywistej, a dłuższy kodu chociaż!).
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
Co mają Spóźniłam się?
Co się stanie, jeśli po prostu użyć: 'l_oCmd.Parameters.Add (nowa SqlParameter ("test @", "Hello World"));' – tloflin
Sporządzono oba, robi to samo każdy sposób. – eftpotrm