sp_cursorprepare (języka Transact-SQL)
Kompiluje kursor instrukcja lub partia do planu wykonania, ale nie tworzy kursor.Skompilowany instrukcja później mogą być używane przez sp_cursorexecute.Ta procedura w połączeniu z sp_cursorexecute, ma taką samą funkcja jak sp_cursoropen, , ale jest podzielony na dwie fazy.sp_cursorprepare is invoked by specifying ID = 3 in a tabular data stream (TDS) packet.
Składnia
sp_cursorprepare prepared_handle OUTPUT, params , stmt , options
[ , scrollopt [ , ccopt ] ]
Argumenty
prepared_handle
SQL generowany przez serwer przygotowane dojście identyfikator, który zwraca wartość całkowitą.Ostrzeżenie
prepared_handlenastępnie są dostarczane do sp_cursorexecute procedurę, aby otworzyć kursor.Po utworzeniu uchwytu istnieje do momentu wylogowania lub jawnie usunąć go za pomocą sp_cursorunprepare procedury.
params
Identyfikuje sparametryzowana sprawozdania.params Definicji zmiennych jest podstawiane znaczników parametru w instrukcja.paramsjest wymagany parametr, który wzywa do ntext, nchar, lub nvarchar wartości wejściowych.Jeśli instrukcja nie jest sparametryzowana, należy wprowadzić wartość NULL.Ostrzeżenie
Użycie ntext ciąg wejściowy wartość, gdy stmt jest sparametryzowana i scrollopt wartość PARAMETERIZED_STMT jest dalej.
stmt
Definiuje kursor zestaw wyników.stmt Parametr jest wymagany i wzywa do ntext, nchar lub nvarchar wartości wejściowych.Ostrzeżenie
Zasady określania stmt wartości są takie same jak dla sp_cursoropen, z wyjątkiem, stmtTyp danychciąg musi być ntext.
options
Parametr opcjonalny, który zwraca opis kursor zestaw wyników kolumny.optionswymaga następujących int wartości wejściowych.Wartość
Opis
0X0001
RETURN_METADATA
scrollopt
Opcja przewijania.scrolloptto parametr opcjonalny, który wymaga jednego z następujących int wartości wejściowych.Wartość
Opis
0X0001
ZESTAW KLUCZY
0X0002
DYNAMICZNE
0X0004
FORWARD_ONLY
0X0008
STATYCZNE
0x10
FAST_FORWARD
0x1000
PARAMETERIZED_STMT
0x2000
AUTO_FETCH
0x4000
AUTO_CLOSE
0x8000
CHECK_ACCEPTED_TYPES
0x10000
KEYSET_ACCEPTABLE
0x20000
DYNAMIC_ACCEPTABLE
0x40000
FORWARD_ONLY_ACCEPTABLE
0x80000
STATIC_ACCEPTABLE
0x100000
FAST_FORWARD_ACCEPTABLE
Ponieważ żądanej wartości nie mogą być właściwe dla kursor zdefiniowane przez stmt, ten parametr służy jako danych wejściowych i wyjściowych.W takich przypadkach SQL Server przypisuje odpowiednie wartości.
ccopt
Opcja sterowania współbieżności.ccoptto parametr opcjonalny, który wymaga jednego z następujących int wartości wejściowych.Wartość
Opis
0X0001
TYLKO_DO_ODCZYTU
0X0002
SCROLL_LOCKS (wcześniej znany jako LOCKCC)
0X0004
OPTYMISTYCZNA (wcześniej znany jako OPTCC)
0X0008
OPTIMISTIC (wcześniej znany jako OPTCCVAL)
0x2000
ALLOW_DIRECT
0x4000
UPDT_IN_PLACE
0x8000
CHECK_ACCEPTED_OPTS
0x10000
READ_ONLY_ACCEPTABLE
0x20000
SCROLL_LOCKS_ACCEPTABLE
0x40000
OPTIMISTIC_ACCEPTABLE
0x80000
OPTIMISITC_ACCEPTABLE
Tak jak w przypadku scrollpt, SQL Server można przypisać inną wartość niż żądana.
Uwagi
Parametr Stan RPC jest jedną z następujących czynności:
Wartość |
Opis |
|---|---|
0 |
SUKCES |
0X0001 |
Błąd |
1FF6 |
Nie może zwrócić metadane. Uwaga:
Przyczyną tego błędu jest, że instrukcja nie produkuje zestaw wyników; na przykład jest wstawianie lub DDL instrukcja.
|
Przykłady
Gdy stmt jest sparametryzowana i scrollopt wartość PARAMETERIZED_STMT jest włączone, format ciąg jest następująca:
{ <Nazwa zmiennej lokalnej><Typ danych> } [, …n
Zobacz także
.gif)
Uwaga: