Udostępnij za pomocą


sp_prepexec (Transact-SQL)

Dotyczy:programu SQL Server

Przygotowuje i wykonuje sparametryzowaną instrukcję Transact-SQL. sp_prepexec łączy funkcje sp_prepare i sp_execute. Ta akcja jest wywoływana przez ID = 13 w pakiecie strumienia danych tabelarycznych (TDS).

Transact-SQL konwencje składni

Składnia

sp_prepexec handle OUTPUT , params , stmt
    [ , bound param ] [ , ...n ]
[ ; ]

Argumenty

Ważny

Argumenty dla rozszerzonych procedur składowanych należy wprowadzić w określonej kolejności zgodnie z opisem w sekcji składni. Jeśli parametry są wprowadzane poza kolejnością, wystąpi komunikat o błędzie.

dojście do

Wygenerowany programu SQL Server obsługuje identyfikator. dojście jest wymaganym parametrem z wartością zwracaną int.

params

Identyfikuje sparametryzowane instrukcje. Parametry definicji zmiennych są zastępowane znacznikami parametrów w instrukcji . parametrów jest wymaganym parametrem wywołującym ntext, ncharlub nvarchar wartość wejściową. Wprowadź wartość NULL, jeśli instrukcja nie jest sparametryzowana.

stmt

Definiuje zestaw wyników kursora. Parametr stmt jest wymagany i wywołuje ntext, ncharlub nvarchar wartości wejściowej.

bound_param

Oznacza opcjonalne użycie dodatkowych parametrów. bound_param wywołuje wartość wejściową dowolnego typu danych w celu wyznaczenia dodatkowych parametrów do użycia.

Przykłady

Poniższy przykład przygotowuje i wykonuje prostą instrukcję:

DECLARE @Out AS INT;

EXECUTE sp_prepexec
    @Out OUTPUT, N'@P1 nvarchar(128), @P2 nvarchar(100)',
    N'SELECT database_id, name
      FROM sys.databases
      WHERE name=@P1 AND state_desc = @P2',
    @P1 = 'tempdb',
    @P2 = 'ONLINE';

EXECUTE sp_unprepare @Out;