i am new on asp.net with vb.code behind
i am trying get value from sql
my code
Dim apps As New MyApps
apps.OpenConnection()
Dim esql As New SqlCommand
esql.Connection = apps.oConn
esql.CommandText = "cekdatauploads"
esql.Parameters.Add("@value", SqlDbType.Int, 2)
esql.ExecuteNonQuery()
esql.Parameters("@value").Direction = ParameterDirection.Output
Dim nilai As Integer = esql.Parameters("@value").Value
apps.CloseConnection()
the error is
The parameterized query '(@value int)cekdatauploads' expects the parameter '@value', which was not supplied.
i already try execute store prosedure
declare @p int
exec [cekdatauploads] @p output
print @p
and return 0 not empty value.
Thanks in advance!
try by interchanging the two lines.
esql.CommandText = "cekdatauploads"
esql.Parameters.Add("@value", SqlDbType.Int, 2)
esql.Parameters("@value").Direction = ParameterDirection.Output
esql.ExecuteNonQuery()
one more thing if, cekdatauploads
is a strored procedure, you should declare it in the CommandType
esql.CommandType = CommandType.StoredProcedure
esql.CommandText = "cekdatauploads"
esql.Parameters.Add("@value", SqlDbType.Int, 2)
esql.Parameters("@value").Direction = ParameterDirection.Output
esql.ExecuteNonQuery()
You are executing the procedure before you are telling the command that it is an output parameter, by default it assumes it is an input parameter.:
esql.Parameters("@value").Direction = ParameterDirection.Output
esql.ExecuteNonQuery()