Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym artykule przedstawiono porady dotyczące rozwiązań programistycznych korzystających z dynamicznego języka SQL w dedykowanych pulach SQL.
Przykład dynamicznego kodu SQL
Podczas tworzenia kodu aplikacji dla dedykowanych pul SQL może być konieczne użycie dynamicznego języka SQL, aby ułatwić dostarczanie elastycznych, ogólnych i modułowych rozwiązań. Dedykowane pule SQL nie obsługują obecnie danych blob.
Brak obsługi typów danych obiektów blob może ograniczać rozmiar ciągów, ponieważ typy danych obiektów blob obejmują zarówno typy varchar(max) i nvarchar(max).
Jeśli używasz tych typów w kodzie aplikacji do kompilowania dużych ciągów, musisz podzielić kod na fragmenty i użyć instrukcji EXEC.
Prosty przykład:
DECLARE @sql_fragment1 VARCHAR(8000)=' SELECT name '
, @sql_fragment2 VARCHAR(8000)=' FROM sys.system_views '
, @sql_fragment3 VARCHAR(8000)=' WHERE name like ''%table%''';
EXEC( @sql_fragment1 + @sql_fragment2 + @sql_fragment3);
Jeśli ciąg jest krótki, możesz użyć sp_executesql w zwykły sposób.
Uwaga
Instrukcje wykonywane jako dynamiczna baza danych SQL nadal będą podlegać wszystkim regułom weryfikacji języka T-SQL.
Następne kroki
Aby uzyskać więcej porad dotyczących programowania, zobacz Omówienie programowania.