반응형
SQL Server 저장 프로 시저의 선택적 매개 변수?
SQL Server 2008에서 몇 가지 저장된 procs를 작성하고 있는데 여기서 선택적 입력 매개 변수의 개념이 가능한지 궁금하십니까?
사용하고 싶지 않은 매개 변수에 대해 항상 NULL을 전달하고 저장된 proc의 값을 확인한 다음 거기에서 항목을 가져올 수 있다고 가정하지만 여기에서 개념을 사용할 수 있는지 여부에 관심이있었습니다. 감사!
다음과 같이 선언 할 수 있습니다.
CREATE PROCEDURE MyProcName
@Parameter1 INT = 1,
@Parameter2 VARCHAR (100) = 'StringValue',
@Parameter3 VARCHAR (100) = NULL
AS
/* check for the NULL / default value (indicating nothing was passed */
if (@Parameter3 IS NULL)
BEGIN
/* whatever code you desire for a missing parameter*/
INSERT INTO ........
END
/* and use it in the query as so*/
SELECT *
FROM Table
WHERE Column = @Parameter
네, 그렇습니다. 다음과 같이 매개 변수를 선언합니다.
@Sort varchar(50) = NULL
이제 매개 변수를 전달할 필요도 없습니다. 기본값은 NULL (또는 기본값으로 선택한 모든 항목)입니다.
2014 이상은 최소한 기본값을 설정할 수 있으며 해당 매개 변수를 전달하지 않으면 오류가 발생하지 않습니다. 부분 예 : 세 번째 매개 변수는 선택 사항으로 추가됩니다. 처음 두 매개 변수 만 사용하여 실제 절차를 실행하면 제대로 작동했습니다.
exec getlist 47,1,0
create procedure getlist
@convId int,
@SortOrder int,
@contestantsOnly bit = 0
as
참고 URL : https://stackoverflow.com/questions/1810638/optional-parameters-in-sql-server-stored-proc
반응형
'program tip' 카테고리의 다른 글
Visual Studio 솔루션 파일 구문 분석 (0) | 2020.08.09 |
---|---|
javascript / jQuery를 사용하여 Google reCAPTCHA v2의 유효성을 검사하려면 어떻게해야합니까? (0) | 2020.08.09 |
MySQL의 여러 테이블에서 삭제하는 방법은 무엇입니까? (0) | 2020.08.09 |
패키지 관리자 콘솔 활성화-마이그레이션 CommandNotFoundException 특정 VS 프로젝트에서만 (0) | 2020.08.09 |
SpringData JPA에는 메서드 이름 확인을 사용하여 엔터티를 계산하는 방법이 있습니까? (0) | 2020.08.09 |