18
테이블에 값을 삽입하기 위해 저장 프로 시저를 사용하고 있습니다.ExecuteNonQuery()는 항상 -1을 반환합니다.
CREATE PROCEDURE [dbo].[Sp_InsertValue]
@Val1 as nvarchar(50)
@Val2 as nvarchar(50)
as
BEGIN
IF NOT EXISTS(SELECT * FROM @mytable WHERE [email protected])
INSERT INTO @mytable VALUES(@VAL2)
END
C#을 사용하여 ASP.NET에서이 저장 프로 시저를 호출하려면 ExecuteNonQuery()를 사용하고 있습니다. 그것은 잘 작동, 아무 문제, 그것은 값이 존재하지 않는 경우 삽입합니다. 문제는 cmd.ExecuteNonQuery()가 항상 -1을 반환한다는 것입니다. 레코드가 삽입되면 1을 반환하고 그렇지 않으면 0을 반환합니다.
SQL Server 쿼리 창에서이 절차를 실행하면 결과 창에서 업데이트 된 모든 레코드를 볼 수 있습니까? 또한 마지막 행에 프로 시저를 추가하여 영향을받는 행을 리턴하십시오. @@ Rowcount를 리턴하십시오. – Lingaraj