Powershell i SQL 15 – trochę teorii o SMO

5-lis-2016

SMO (SQL Management Object) to biblioteki .NET pozwalające na pracę z SQL server. Ponieważ PowerShell świetnie integruje się z .NET, to jednym ze sposobów pracy z SQL jest właśnie SMO. Mając do dyspozycji również SQL Provider administratorzy zapewne chętniej wybiorą pracę z modułem SQLPS, jednak dla programistów SMO może być dość ciekawe…

Na stronie https://msdn.microsoft.com/en-us/library/ms162209.aspx znajduje się diagram pozwalający zorientować się, w strukturze obiektów opisujących SQL. Na diagramiemożna zobaczyć elementy w kolorze pomarańczowym (są to kolekcje obiektów) oraz niebieskie (są to opisy klas/obiektów). W poniższym screenshot widać że na serwerze znajduje się kolekcja DatabaseCollection. Obiekty znajdujące się w tej kolekcji to obiekty typu Database. Obiekt Database jest z kolei zbudowany z następnych właściwości, a te czasami są następnymi kolekcjami:

smo-diagram

Opis dostępnych SMO wraz z informacją, której biblioteki kiedy należy używać znajduje się pod adresem https://msdn.microsoft.com/en-us/library/ms162233.aspx. Drążąc dokumentację klas dojdziesz w końcu do opisów metod. Nie przerażaj się tym, że w części syntax opisane są tylko składnie dla C#, C++, F# i VB:

smo_help

 

Zazwyczaj w dolnej części strony można odnaleźć przykłady, które pokazują, jak skorzystać z danej funkcjonalności korzystając z PowerShell:

 

 

 

smo_example

 

Komentarze są wyłączone

Autor: Rafał Kraik