Typy zdefiniowane przez użytkownika środowiska CLR
Dotyczy:programu SQL Server
Program SQL Server umożliwia tworzenie obiektów bazy danych, które są programowane względem zestawu utworzonego w środowisku uruchomieniowym języka wspólnego programu .NET Framework (CLR). Obiekty bazy danych, które mogą korzystać z zaawansowanego modelu programowania udostępnianego przez clR, obejmują wyzwalacze, procedury składowane, funkcje, funkcje agregujące i typy.
Nuta
Możliwość wykonywania kodu CLR jest domyślnie ustawiona na WARTOŚĆ OFF w programie SQL Server. ClR można włączyć przy użyciu procedury składowanej systemu sp_configure
.
Za pomocą zdefiniowanych przez użytkownika typów (UDT) można rozszerzyć system typów skalarnych serwera, umożliwiając przechowywanie obiektów CLR w bazie danych programu SQL Server. Trasy zdefiniowane przez użytkownika mogą zawierać wiele elementów i mogą mieć zachowania, różniąc je od tradycyjnych typów danych aliasu, które składają się z jednego typu danych systemowych programu SQL Server.
Ze względu na to, że dostęp do tras zdefiniowanych przez system jest uzyskiwany przez cały system, ich użycie w przypadku złożonych typów danych może negatywnie wpłynąć na wydajność. Złożone dane są zazwyczaj najlepiej modelowane przy użyciu tradycyjnych wierszy i tabel. Trasy zdefiniowane przez użytkownika w programie SQL Server są odpowiednie dla następującego typu danych:
- Typy dat, godzin, waluty i rozszerzonych liczb
- Aplikacje geoprzestrzenne
- Zakodowane lub zaszyfrowane dane
Proces tworzenia tras zdefiniowanych przez użytkownika w programie SQL Server składa się z następujących kroków:
Kodowanie i kompilowanie zestawu definiującego udT. Nazwy ZDEFINIOWANE przez użytkownika są definiowane przy użyciu dowolnego z języków obsługiwanych przez środowisko uruchomieniowe języka wspólnego programu .NET Framework (CLR), które generuje weryfikowalny kod. Dotyczy to języków C# i Visual Basic .NET. Dane są udostępniane jako pola i właściwości klasy lub struktury programu .NET Framework, a zachowania są definiowane przez metody klasy lub struktury.
Zarejestruj zestaw. Funkcje zdefiniowane przez użytkownika można wdrażać za pomocą interfejsu użytkownika programu Visual Studio w projekcie bazy danych lub za pomocą instrukcji Transact-SQL
CREATE ASSEMBLY
, która kopiuje zestaw zawierający klasę lub strukturę do bazy danych.Utwórz udT w programie SQL Server. Po załadowaniu zestawu do bazy danych hostów należy użyć instrukcji Transact-SQL CREATE TYPE, aby utworzyć udT i uwidocznić elementy członkowskie klasy lub struktury jako elementy członkowskie udT. Trasy zdefiniowane przez użytkownika istnieją tylko w kontekście pojedynczej bazy danych, a po zarejestrowaniu nie mają zależności od plików zewnętrznych, z których zostały utworzone.
Tworzenie tabel, zmiennych lub parametrów przy użyciu funkcji UDT. Typ zdefiniowany przez użytkownika może służyć jako definicja kolumny tabeli, jako zmienna w partii Transact-SQL lub jako argument funkcji Transact-SQL lub procedury składowanej.
W tej sekcji
Artykuł | Opis |
---|---|
Tworzenie typów zdefiniowanych przez użytkownika | Opisuje sposób tworzenia tras zdefiniowanych przez użytkownika. |
Rejestrowanie typów zdefiniowanych przez użytkownika w programie SQL Server | Opisuje sposób rejestrowania identyfikatorów ZDEFINIOWANYch przez użytkownika i zarządzania nimi w programie SQL Server. |
praca z typami zdefiniowanymi przez użytkownika w programie SQL Server | Opisuje sposób tworzenia zapytań przy użyciu tras zdefiniowanych przez użytkownika. |
Dostęp do typów zdefiniowanych przez użytkownika w ADO.NET | Opisuje sposób pracy z funkcjami ZDEFINIOWANYmi przez użytkownika przy użyciu dostawcy danych programu .NET Framework dla programu SQL Server w ADO.NET. |