SQL Server: почему используется SMO? - PullRequest
10 голосов
/ 25 ноября 2010

Я работаю с SQL Server уже пару лет.Я слышал о SMO, но ничего об этом не знаю.Каковы преимущества его использования?Должен ли я учиться и начать использовать SMO в своих проектах SQL Server (в основном, в разработке хранилищ данных)?Почему?

Ответы [ 4 ]

6 голосов
/ 25 ноября 2010

От Microsoft:

Обзор (SMO)

Объекты управления SQL Server (SMO) - это объекты, предназначенные для программного управления Microsoft SQL Server.Вы можете использовать SMO для создания пользовательских приложений управления SQL Server.Хотя SQL Server Management Studio является мощным и обширным приложением для управления SQL Server, могут быть ситуации, когда вы будете лучше обслуживаться приложением SMO.

Например, пользовательские приложения, управляющие задачами управления SQL Serverвозможно, придется упростить, чтобы удовлетворить потребности новых пользователей и сократить расходы на обучение.Возможно, вам придется создать настраиваемые базы данных SQL Server или создать приложение для создания и мониторинга эффективности индексов.Приложение SMO также может использоваться для беспрепятственного включения стороннего оборудования или программного обеспечения в приложение управления базой данных.

Объектная модель SMO расширяет и заменяет объектную модель объектов распределенного управления (SQL-DMO).По сравнению с SQL-DMO SMO повышает производительность, контроль и простоту использования.Большая часть функциональности SQL-DMO включена в SMO, и существуют различные новые классы, которые поддерживают новые функции в SQL Server.Объектная модель интуитивно понятна и использует терминологию SQL-DMO, где это возможно, чтобы помочь передать ваши навыки.

Вы можете скачать SMO здесь:

Microsoft® SQLServer® 2008 R2 Feature Pack

А для начала программирования:

Создание программ SMO

5 голосов
/ 25 ноября 2010

Это зависит от того, что вы пытаетесь сделать.SMO - это объекты управления SQL Server.Это набор библиотек для программного управления SQL Server.Например, если вы пытаетесь создать клон SQL Maangement Studio, то SMO - это то, что вы, вероятно, захотите изучить.ИЛИ, если вы пытаетесь манипулировать структурой вашей базы данных программным способом, то это то место, куда стоит заглянуть.

В противном случае я бы не стал беспокоиться.

3 голосов
/ 29 января 2011

Я использовал SMO для автоматического создания сценариев объектного кода и разрешений пользователей и добавления управления версиями.

Делая это, я могу сохранить привилегии или объект DDL на определенный момент времени для моей аудиторской команды или для собственного исследования или для клонирования сервера.

Я также использую его, чтобы быстро сравнивать объектный код с определенными датами без необходимости создания снимка / резервного копирования.

Недавно я использовал SMO в проекте аварийного восстановления для создания сценариев для всех разрешений сервера и разрешений объектов системной базы данных и запуска сценария на сервере замены.

0 голосов
/ 26 ноября 2018

Недавно я создал приложение POS / Work Order Management с базой данных SQL и библиотекой SMO.SMO предоставил моему приложению большую гибкость для управления базой данных с точки зрения записей рабочих заданий, записей пользователя и даже моего собственного набора пользовательских ролей.Помогите мне отличить пользователей SQL при управлении конкретной базой данных.Итак, я полагаю, что все зависит от того, насколько вы используете SQL и сколько вам может понадобиться для автоматизации и контроля определенных аспектов вашей базы данных SQL.

...