다음과 같이 기본 매개 변수 값을 변경해 보았습니다.
ALTER PROCEDURE [dbo].[my_sp]
@currentDate datetime = GETDATE()
모든 SQL 사전 컴파일러가 내게 준 모든 오류는 다음과 같습니다.
메시지 102, 수준 15, 상태 1, 프로 시저 my_sp, 줄 8 '('근처에 잘못된 구문이 있습니다.
이미 절차를 만들었습니다. (관련성이 있는지 잘 모르겠습니다.) null 기본값을 사용하고 나중에 확인했지만 적절하지 않은 것 같습니다. 한 줄로 할 수 있습니까?
업데이트 : 저장 프로 시저 매개 변수에 대한 MSDN의 설명에서 벗어났습니다 .
[= default] 매개 변수의 기본값입니다. 기본값이 정의 된 경우 해당 매개 변수에 대한 값을 지정하지 않고 함수를 실행할 수 있습니다.
참고 :
varchar (max) 및 varbinary (max) 데이터 형식을 제외한 CLR 함수에 대해 기본 매개 변수 값을 지정할 수 있습니다.함수의 매개 변수에 기본값이있는 경우 기본값을 검색하기 위해 함수가 호출 될 때 키워드 DEFAULT를 지정해야합니다. 이 동작은 매개 변수를 생략하면 기본값을 의미하는 저장 프로 시저에서 기본값과 함께 매개 변수를 사용하는 것과 다릅니다.
내가 잘못 읽고 있습니까?
감사합니다.