공급되지 않은 매개 변수를 예상 :C#을 저장 프로 시저 시작 프로 시저 또는 함수 내가이 저장 프로 시저를 가지고
ALTER PROCEDURE [dbo].[sp_XNet_Backup]
@backupPath NVARCHAR(4000) = null,
@rc INT OUT
AS
BEGIN
SET @rc = 0
...
...
이 방법으로 C# 프로젝트에서 출시 :
SqlParameter[] paramters = new SqlParameter[2];
byte i = 0;
string sp = "dbo.sp_XNet_Backup";
using (SqlConnection conn = DBManager.CreateADOConnMaster())
{
conn.Open();
SqlCommand cmd = new SqlCommand(sp, conn);
cmd.CommandType = CommandType.StoredProcedure;
paramters[i++] = new SqlParameter("@backupPath", completePath);
paramters[i] = new SqlParameter("@rc", SqlDbType.Int);
paramters[i].Direction = ParameterDirection.InputOutput;
foreach (SqlParameter param in paramters)
cmd.Parameters.Add(param);
cmd.ExecuteNonQuery();
...
...
하지만 나에게이 오류 제공 :
Procedure or function 'sp_XNet_Backup' expects parameter '@rc', which was not supplied.
도움이되기를 바랍니다하십시오, 다음 ParameterDirection.Output'는 – stuartd
사이드 노트, 당신은 이름을 변경 고려해야한다'사용하여 프로 시저 및 sp_ 접두사 제거 (또는 더 나은 모든 접두사 삭제). sp_ 접두어는 MS에서 예약되어 있으므로 일부 문제가 발생할 수 있습니다. http://sqlperformance.com/2012/10/t-sql-queries/sp_prefix –
좋아 보인다 :-) – user3518663