Udostępnij za pośrednictwem


Omówienie (SMO)

SQL Server Management Objects (SMO) are objects designed for programmatic management of Microsoft SQL Server.Można użyć obiektów SMO do konstruowania dostosowanych SQL Server zarządzania aplikacjami.Chociaż SQL Server Management Studio jest zaawansowanym i rozległe aplikacji do zarządzania SQL Server, może to być czas, kiedy można będzie lepiej służyć przez aplikację SMO.

Na przykład aplikacji użytkownika, które kontrolują SQL Server zadań zarządzania może być uproszczone, w celu zaspokojenia potrzeb nowych użytkowników i zmniejszyć koszty szkolenia.Należy utworzyć dostosowaną SQL Server bazy danych, lub utworzyć aplikację do tworzenia i monitorowania skuteczności indeksy.Aplikacja SMO może również bezproblemowo dołączyć firm sprzętu lub oprogramowania do bazy danych aplikacji do zarządzania.

Model obiektu SMO rozszerza i zastępuje model Distributed Management Objects (SQL-DMO) obiektu.W porównaniu do obiektów SQL-DMO SMO zwiększa wydajność, kontroli i łatwość użycia.Większość funkcjonalności SQL-DMO jest dołączony SMO i istnieją różne nowych klas, które obsługują nowe funkcje w SQL Server.Model obiektów jest intuicyjny i używa obiektów SQL-DMO terminologii, gdzie jest możliwe ułatwić transfer swoje umiejętności.

Ponieważ obiekty SMO są zgodne z SQL Server 2000, SQL Server 2005, SQL Server 2008 i SQL Server 2008 R2, można łatwo zarządzać multi-wersja środowiska.

Ważna informacjaWażne:

SMO nie obsługuje poziom zgodności 60, 65 lub 70.Jeśli używasz SMO z bazy danych zestaw poziom zgodności 60, 65 lub 70, nie będzie możliwe zarządzanie bazą danych za pomocą obiektów SMO.

Nowe funkcje w SMO:

  • Model obiektu w pamięci podręcznej i utworzenie wystąpienie obiektu zoptymalizowane.Obiekty są ładowane tylko wtedy, gdy wyraźnie odwołanie.Właściwości obiektu są tylko częściowo załadowane podczas tworzenia obiektu.Pozostałe obiekty i właściwości są ładowane, gdy są one wywoływane bezpośrednio.

  • Wykonanie batched Transact-SQL instrukcji.Sprawozdania są batched, aby poprawić wydajność sieci.

  • Przechwytywanie Transact-SQL instrukcji.Allows any operation to be captured into a script.Management Studio uses this capability to script an operation instead of executing it immediately.

  • Management of SQL Server services with the WMI Provider.SQL Server services can be started, stopped, and paused programmatically.

  • Advanced Scripting.Transact-SQL scripts can be generated to re-create SQL Server objects that describe relationships to other objects on the instance of SQL Server.

  • Stosowanie unikatowego zasobu nazwy URN.Nazwę URN umożliwia tworzenie wystąpienia i odwołanie obiektów SMO.

SMO stanowi również jako nowe obiekty, właściwości lub wiele funkcji i składników, które zostały wprowadzone w SQL Server 2005.Te nowe funkcje i składniki są następujące:

Obszar nazw obiektów SMO jest Microsoft.SqlServer.Management.Smo.SMO is implemented as a Microsoft .NET Framework assembly.This means that the common language runtime from the Microsoft .NET Framework version 2.0 must be installed before using the SMO objects.Zespoły obiekty SMO są instalowane domyślnie do pamięci podręcznej zestawów (GAC), globalne, z SQL Server opcji SDK.Zestawy znajdują się w C:\Program Files\Microsoft SQL Server\100\SDK\Assemblies\.For more information, see the Visual Studio .NET Framework documentation.

Klasy obiektów SMO

Klasy obiektów SMO obejmują dwie kategorie: wystąpienie klasy i narzędzie klasy.

Wystąpienia klas

Wystąpienie klasy reprezentuje SQL Server obiektów, takich jak serwery, baz danych, tabele, wyzwalacze i procedur przechowywanych.ServerConnection Klasy jest używany do ustanawiania połączenia z wystąpienie SQL Server i tryb przechwytywania wysyłanych do niej poleceń sterowania

Obiekty SMO wystąpienie tworzą hierarchię reprezentujący hierarchii serwera bazy danych.U góry są wystąpienia SQL Server, pod którą są baz danych i w następstwie na z tabel, kolumn, wyzwalaczy i tak dalej.Jeśli jest logiczną jest jedną jednostkę nadrzędną wiele relacji podrzędność, takich jak posiadające jedną lub więcej kolumn tabela podrzędność jest reprezentowany przez kolekcja obiektów.W przeciwnym razie podrzędność tylko jest reprezentowany przez obiekt.

Narzędzie klas

Narzędzia klasy są grupy obiektów, które zostały utworzone jawnie do wykonywania określonych zadań.Te podzielono na inny obiekt hierarchii na podstawie funkcja:

  • Transfer klasy.Służy do transferu schemat i dane do innej bazy danych.

  • Klasy kopii zapasowej i przywracania.Są one używane do tworzyć kopię zapasową zapasowych i przywracanie baz danych.

  • Klasa autorzy skryptów.Służy do tworzenia plików skryptów do regeneracji obiektów i ich zależności.

Nowe funkcje obiektów SMO

Optymalizacja wydajności

SQL-DMO obiektu wyliczenia wymagane każdy obiekt w kolekcja został skonkretyzowany pełni.To jest nieefektywne w zakresie sieci i pamięci wyświetlacz.Przy wielu okazjach obiektu może utworzyć wystąpienia, bez większość jego właściwości są jawne odwołania.

Architektura SMO jest bardziej wydajny w zakresie pamięci, ponieważ najpierw są tylko częściowo tworzone wystąpienia obiektów i właściwość minimalne zażądane z serwera.Pełna wystąpienia obiektów jest opóźnione, dopóki obiekt nie zostanie wywołany jawnie.Obiekt pełni utworzyć wystąpienia, gdy wymagane jest właściwość, nie jest to zestaw właściwości, który najpierw są pobierane lub gdy wywoływana jest metoda wymaga takich właściwości.Przejście między obiektami skonkretyzowanym częściowo i całkowicie skonkretyzowanym jest przezroczyste dla użytkownika.Ponadto niektóre właściwości używających dużej ilości pamięci nigdy nie pobierane są, chyba że właściwość jawne odwołania.Przykładem tego jest Size Właściwość Database Właściwości obiektu.Jednak częściowe wystąpienia wymagają więcej sieci niepotrzebnej i może nie być najlepszą wykonywania opcji dla aplikacji.

Można kontrolować wystąpienia do własnych środowiska systemu.Opierając się na opóźnionego wystąpienia minimalizuje ilość pamięci wymaganej przez aplikację, chociaż może wywoływać wiele żądań serwera, gdy odwołuje się do właściwości.

W trzech poziomów wystąpienia może istnieć wystąpienie klasy, obiekty reprezentujące obiekty bazy danych rzeczywistych.Te są minimalne wystąpienia (tylko wymagane właściwości są odczytywane w jednym blok), częściowo wystąpienia (wszystkie właściwości, które za pomocą stosunkowo dużej ilości pamięci są odczytywane w jednym blok) i pełni utworzoną.UN-instantiated i pełni utworzoną są tradycyjne Państwa konkretyzacji.Częściowo skonkretyzowanym Państwo zwiększa wydajność, ponieważ częściowo skonkretyzowanym obiekt nie zawiera wartości dla pełnego zestaw właściwości obiektu.Częściowe wystąpienia jest domyślny stan obiektu nie jest wywoływany bezpośrednio.Po odwołaniu jednej z tych właściwości błąd jest zgłaszany, monitujący pełnego wystąpienia obiektu.

Przechwyć wykonanie

Bezpośrednie wykonanie jest metoda zwykła wykonanie.Sprawozdania są przesyłane do wystąpienie SQL Server bezpośrednio zostały poniesione.Wykonanie przechwytywania jest alternatywą dla to.

Umożliwia wykonanie będzie przechwytywać przechwytywanie Transact-SQL partii, które zwykle byłyby wykonywane.Dzięki temu programista SMO odroczyć skryptu, przechowywać go później lub zapewnia podgląd dla użytkownika końcowego.Na przykład create database, create tablei create index Instrukcja może być wysłana w jednej partia i Uruchom jako trzy kolejne kroki.Ta funkcja jest kontrolowane przez użytkownika za pomocą Server obiektu.

Dostawca WMI

Przez obiekty SMO są pakowane obiektów dostawcy WMI.Zapewnia to programisty SMO z modelem prosty obiekt, który jest podobny do klasy obiektów SMO bardzo ściśle bez wymogu, aby poznać model programowania, który jest reprezentowany przez obszar nazw i szczegóły SQL Server dostawcy WMI.Dostawca WMI umożliwia konfigurowanie SQL Server usługi, aliasy i klient i serwera sieci bibliotek.

Skryptów

W SMO, wykonywanie skryptów został rozszerzony i przeniesione do Scripter klasyAutorzy skryptów klasy można wykryć zależności, zrozumieć relacje między obiektami i umożliwia manipulowanie hierarchię zależności.Głównym celem wykonywanie skryptów jest Scripter obiektu.Istnieją również kilku obiektów pomocniczych, które obsługują zależności i reagowanie na zdarzenia błędu lub postępu.

Scripter Obiekt obsługuje następujące zaawansowane opcje obsługi wykonywanie skryptów:

  • (Tworzy skrypt w jednym kroku) prostych wykonywanie skryptów fazy 1

  • Zaawansowane wykonywanie skryptów 3 fazy (tworzy skrypt w trzech krokach; wykrywanie depencency, generowanie listy, generowanie skryptu)

  • Odnajdowanie dwukierunkowe zależność (umożliwia odnajdowanie, współzależności lub zależności)

  • Odpowiedzi na zdarzenia postępu

  • Odpowiedzi na zdarzenia błędu

Unikatowe nazwy zasobów

A klucz pojęcie przy użyciu biblioteki obiektów SMO jest unikatowa nazwa zasobu (URN).Nazwy URN wykorzystuje składnię XPath.Xścieżka to hierarchia ścieżka służy do określania obiektu ma każdego poziom kwalifikatory i funkcje.SMO nazwy URN ma dwa elementy, ścieżka i atrybut nazewnictwa, która ma ograniczoną funkcjonalność.Aby określić lokalizację obiektu atrybut nazewnictwa zezwala na stopień filtrowania używana jest ścieżka.

Na przykład URN bazy danych

/Server/Database[@Name='Adventureworks2008R2']

URN obiektu mogą być pobierane przez odwoływanie się do jego właściwość URN.Obiekt autorzy skryptów używa również urny jako parametry przekazujące obiektu odwołania do metoda Scripter obiektu.Ponadto można określić nazwę URN dla GetSmoObject(Urn) metoda Server obiektu.Służy to tworzenia wystąpienie obiektu SMO.

Nowe funkcje programu SQL Server W SMO

Tabela i podziału indeksu

Partycjonowanie tabeli indeks umożliwia zarządzanie rozprzestrzeniania się danych w tabelach i indeksy za pośrednictwem grupy plików.Ta nowa funkcja jest reprezentowana przez obiekty SMO.

Punkty końcowe

Protokół SOAP i dublowanie bazy danych żądania są obsługiwane przez punkty końcowe przy użyciu Endpoint obiektu.

Przechowywanie wersji poziomu izolacji i wiersz migawki

Migawki izolacji (poziom wersji wiersza) jest reprezentowany przez nowy Database Właściwości obiektu.

Obszar nazw schematu XML, indeksy XML i typ danych XML

Obszary nazw schematu XML są reprezentowane w SMO przez kolekcja obiektów.Indeksy XML są reprezentowane w SMO przez Index właściwość obiektu.

Ulepszenia wyszukiwania pełnotekstowego

Nowe obiekty są dostarczane w SMO reprezentujące ulepszenia do wyszukiwania pełnotekstowego.

Strony Sprawdź

PageVerify Strona bazy danych reprezentuje obiekt Sprawdź opcje.

Migawkę bazy danych.

Migawkę bazy danych jest tylko do odczytu kopii określonej bazy danych jako określony punkt czas.A migawka bazy danych można określić za pomocą IsDatabaseSnapshot Właściwość Database obiektu.

Service Broker

Service Broker i jego funkcjonalność jest reprezentowany przez grupę obiektów

Ulepszenia indeksu

SQL ServerUlepszenia indeksu są reprezentowane przez nowe właściwości w Index obiektu.

SMO i SQL-DMO

Model obiektu SMO zastępuje i zastępuje SQL-DMO.SMO supports SQL Server 2000, SQL Server 2005, SQL Server 2008 and SQL Server 2008 R2.Obsługuje on więcej SQL Server zarządzania zadań i zawiera wiele nowych funkcji w SQL Server.SMO zaprojektowano bardziej wydajne i zapewnia większą kontrolę.

Biblioteka DMO jest model obiektów COM, SMO jest zaimplementowany jako .NET Framework wirtualny plik dziennika.Składniki COM są bibliotek, które zapewniają napełnieniem funkcji aplikacji i programowania aplikacji niezarządzanych. .NET Framework Zespołów zapewniają funkcje wielokrotnego użytku dla .NET Framework napisać kod zarządzany aplikacji.

Podczas przejścia do .NET Framework technologii jest możliwe aplikacje napisane częściowo w kod zarządzany i częściowo kod niezarządzany. .NET Framework Umożliwia interfejs ze składnikami COM, które wymaga zestawu podstawowego Interop.Otoka runtime jest wymagana dla obiektów SQL-DMO, dzięki czemu może być wywołana z .NET Framework-na podstawie aplikacji.