끼 워 넣 은 매개 변 수 를 실행 하 는 sql - spexecutesql
sp_executesql 은 여러 번 다시 사용 하거나 동적 으로 생 성 할 수 있 는 Transact - SQL 문 구 를 실행 하거나 일괄 처리 합 니 다.Transact - SQL 구문 이나 일괄 처 리 는 끼 워 넣 은 인 자 를 포함 할 수 있 습 니 다.문법 spexecutesql [@stmt =] stmt[ {, [@params =] N'@parameter_name data_type [,...n]' } {, [@ param 1 =] 'value 1' [,... n]}] 인자 [@ stmt =] stmt 는 Transact - SQL 구문 이나 일괄 처 리 된 유 니 코드 문자열 을 포함 하고 있 으 며, stmt 는 ntext 로 암시 적 으로 변환 할 수 있 는 유 니 코드 상수 나 변수 여야 합 니 다.더 복잡 한 유 니 코드 표현 식 을 사용 할 수 없습니다.문자 상수 사용 을 허용 하지 않 습 니 다.상수 가 지정 되면 N 을 접두사 로 사용 해 야 합 니 다.예 를 들 어 유 니 코드 상수 N 'spwho '는 유효 하지만 문자 상수' spwho '는 무효 입 니 다.문자열 의 크기 는 사용 가능 한 데이터베이스 서버 메모리 에 만 제 한 됩 니 다.stmt 는 변수 이름과 같은 매개 변 수 를 포함 할 수 있 습 니 다. 예 를 들 어
N'SELECT * FROM Employees WHERE EmployeeID = @IDParameter'
stmt 에 포 함 된 매개 변 수 는 @ params 매개 변수 정의 목록 과 매개 변수 값 목록 에 모두 대응 하 는 항목 이 있어 야 합 니 다.[@params =] N'@parameter_name data_type [,... n] '문자열 은 stmt 에 삽 입 된 모든 매개 변수의 정 의 를 포함 합 니 다.이 문자열 은 ntext 로 암시 적 으로 변환 할 수 있 는 유 니 코드 상수 나 변수 여야 합 니 다.모든 매개 변수 정 의 는 매개 변수 이름과 데이터 형식 으로 구성 된다.n 은 추가 매개 변수 정 의 를 나타 내 는 자리 표시 자 입 니 다.stmt 에서 지정 한 매개 변 수 는 @ params 에서 정의 해 야 합 니 다.stmt 의 Transact - SQL 구문 이나 일괄 처리 에 인자 가 포함 되 어 있 지 않 으 면 @ params 가 필요 하지 않 습 니 다.이 인자 의 기본 값 은 NULL 입 니 다.[@ param 1 =] 'value 1' 매개 변수 문자열 에서 정 의 된 첫 번 째 매개 변수의 값 입 니 다.이 값 은 상수 나 변수 일 수 있 습 니 다.stmt 에 포 함 된 매개 변수 에 매개 변수 값 을 제공 해 야 합 니 다.stmt 에 포 함 된 Transact - SQL 구문 이나 일괄 처리 에 인자 가 없 으 면 값 이 필요 하지 않 습 니 다.매개 변수의 값 을 추가 하 는 자리 표시 자 입 니 다.이 값 들 은 상수 나 변수 일 뿐 더 복잡 한 표현 식 이 아 닙 니 다. 예 를 들 어 함수 나 연산 자 를 사용 하여 생 성 된 표현 식 입 니 다.코드 값 0 (성공) 또는 1 (실패) 결과 집합 을 되 돌려 줍 니 다. SQL 문자열 을 생 성 하 는 모든 SQL 구문 에서 결과 집합 을 되 돌려 줍 니 다.예 (민 남 교역 망 제공 에 감 사 드 립 니 다)declare @user varchar(1000)
declare @moTable varchar(20)select @moTable = 'MT_10'
declare @sql nvarchar(4000) -- ,
set @sql='select @user = count(distinct userid) from '+@moTable --
-- @sql
exec sp_executesql @sql
,N'@user varchar(1000) out' -- @sql
,@user out -- ,
print @user
이 예 에서 @ moTable 은 삽 입 된 매개 변수 입 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
exec 와 spexecutesqlsqlserver 의 exec 와 spexecutesql 은 동적 sql 구문 과 저장 과정 을 실행 할 수 있 지만 exec 용법 은 비교적 간단 하고 파 라 메 터 를 가 져 올 수 없 으 며 파 라 메 터 를 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.