저장 프로시저를 호출하고 반환 값을 사용하는 기본 방법
저자:Eve Cole
업데이트 시간:2009-05-31 00:08:21
반환 값으로 저장 프로시저를 참조하는 좋은 방법을 찾지 못했기 때문에 데이터를 추가할 때 많은 우회를 하게 되었습니다. 최근에 많은 정보를 참조한 후 마침내 Microsoft 인스턴스에서 좋은 방법을 찾았습니다.
먼저 반환 값을 사용하여 저장 프로시저를 작성합니다.
프로시저 proc_name 생성
@para1 nchar(20), --input 매개변수
@para2 int = null out --프로그램 사용을 위한 출력 매개변수
~처럼
카운트 안함 설정
if(존재하지 않음( em_name=@para1 인 직원에서 * 선택))
시작하다
직원(이름) 값(@para1)에 삽입
@para2=@@identity 선택 - 추가된 레코드의 ID를 반환합니다.
return 1 - 데이터가 성공적으로 추가되었는지 여부를 반환합니다.
끝
또 다른
0 반환 --반환 실패
가다
그런 다음 저장 프로시저를 호출하는 방법이 있습니다.
sqlcommand 명령;
command = new sqlcommand(proc_name,new sqlconnection(connectionstr));
command.paraments.add("@para1"),"name1"); //파라미터, 직원 이름 입력
command.paraments.add(new sqlparament("@para2", //출력 매개변수 생성
SqlDbType.Int; //매개변수 데이터 유형
ParamenterDirection.OutPut, //입력 및 출력 유형
0,
0,
문자열.비어 있음,
DataRowVerstion.Default,
null) //매개변수 값, 매개변수 입력 시 필수
);
command.commandtype=commandtype.StoredProcedure;
command.connection.open();
command.executenonQuery();
int pkid=(int)command.Parameters["@para2"].value; //출력 매개변수 값을 가져옵니다.
command.connection.close();
다음은 참조 출력 매개변수입니다. 반환 값(데이터가 성공적으로 추가되었는지 여부)을 참조하려면 ParamenterDirection 유형을 returnvalue로 변경한 다음 매개변수 이름을 직접 변경하면 됩니다.