SqlCommand的输入输出参数
我有SqlCommand的以下参数。 如何进入和退出存储过程的参数值。
SqlCommand mySqlCommand = new SqlCommand("aspInsertZipCode", mySqlConnection); mySqlCommand.CommandType = CommandType.StoredProcedure; mySqlCommand.Parameters.Add("@DataRows", dataStringToProcess.ToString());
var pInOut = mySqlCommand.Parameters.Add("@DataRows", dataStringToProcess.ToString()); pInOut.Direction = ParameterDirection.InputOutput;
然后在执行命令后读取输出值:
// assumes that the parameter is a string and that it could possibly be null string value = Convert.IsDBNull(pInOut.Value) ? null : (string)pInOut.Value;
SqlParameter
有一个Direction
枚举。 设置此值。
然后使用带有SqlParameter
的SqlCommand.Parameters.Add
。
参数方向:
http://msdn.microsoft.com/en-us/library/system.data.parameterdirection.aspx
然后,在调用ExecuteNonQuery
(例如)之后,通过从命令集合中获取参数中的Value
来拉出Value
:
myCommand.Parameters["@paramName"].Value
不记得了,但我认为有一个字符串索引器。
或者,有一个class轮:
myCommand.Parameters.AddWithValue("@paramName", value).Direction = ParameterDirection.InputOutput;
SQL命令参数的一个属性是Direction。 你想要使用(内存不足)
SqlCommand mySqlCommand = new SqlCommand("aspInsertZipCode", mySqlConnection); mySqlCommand.CommandType = CommandType.StoredProcedure; mySqlCommand.Parameters.Add("@DataRows", dataStringToProcess.ToString()); mySqlCommand.Parameters("@DataRows").Direction = ParameterDirection.InputOutput;
SqlParameter DataRows = new SqlParameter("@DataRows", SqlDbType.Text) { Value = dataStringToProcess.ToString(), Direction = ParameterDirection.InputOutput}; mySqlCommand.Parameters.Add(DataRows);