2010-11-25 10 views
8

私は数年間SQL Serverを使用しています。私はSMOについて聞いたことがあるが、私はそれについて何も知らない。それを使用する利点は何ですか?私はSQL Serverプロジェクト(主にデータウェアハウス開発)でSMOを学び始めてみるべきですか?どうして?マイクロソフトからSQL Server:なぜSMOを使用するのですか?

答えて

5

をそれはあなたが何をしようとしているかに依存します。 SMOはSQL Server管理オブジェクトです。プログラムでSQL Serverを管理するための一連のライブラリです。たとえば、SQL Maangement Studioのクローンを作成しようとしている場合、SMOはおそらく調べたいものです。または、データベースの構造をプログラムでマニピュレートしようとしている場合は、それが見える場所です。

そうでなければ、私は気にしません。

+5

データベースオブジェクトのDDLをプログラムで抽出するなど、それ以上のユースケースがあります。 – RedFilter

6

Overview (SMO)

SQL Server管理オブジェクト(SMO) は、Microsoft SQL Serverのプログラム 管理のために設計されたオブジェクトです。 SMOを使用して、カスタマイズされた SQL Server管理アプリケーションを構築できます。 SQL Server Management Studio は、SQL Serverを管理するための強力で広範な アプリケーションですが、 はSMOアプリケーションの方が処理時間がかかることがあります。例えば

、 タスクが に単純化することが必要になる場合がありますSQL Serverの管理を制御するユーザアプリケーション は、新規ユーザーのニーズを満たし、 にトレーニングコストを削減します。カスタマイズされたSQL Server データベースを作成するには、 を使用するか、 インデックスの作成および監視用に というアプリケーションを作成します。 SMOO アプリケーションは、 サードパーティのハードウェアまたは ソフトウェアをデータベース 管理アプリケーションにシームレスに組み込むために使用することもできます。

SMOオブジェクトモデルは延びて は分散管理 オブジェクト(SQL-DMO)オブジェクトモデルに取って代わります。 SQL-DMOと比較して、SMOはパフォーマンス、制御、使いやすさを向上させます。 ほとんどのSQL-DMO機能はSMOの に含まれており、 SQL Serverの新しい機能をサポートするさまざまな新しい クラスがあります。オブジェクトモデルは 直感的で、SQL-DMO という用語を使用しています。可能であれば、 はスキルを習得するのに役立ちます。

あなたはここにSMOをダウンロードすることができます:

Microsoft® SQL Server® 2008 R2 Feature Pack

をと始めたプログラミングの取得のために:

Creating SMO Programs

+0

SMOの使用を開始するにはどうすればよいですか?完全なVisual Studio 2008が必要か、SMOがSQL Server 2008 EEに含まれていますか? – juur

+0

@juur:私の更新を参照してください – RedFilter

3

私はSMOを使用してオブジェクトコードとユーザー権限を自動的にスクリプト化し、バージョン管理に追加しました。

このようにすることで、監査チームや自分の研究やサーバーのクローン作成のための特権またはオブジェクトDDLを特定の時点で保存することができます。

私はスナップショット/バックアップを必要とせずに特定の日付のオブジェクトコードをすばやく比較できるように、私もそれを使用します。

最近、Disaster Recovery ProjectでSMOを使用して、すべてのサーバー権限とシステムデータベースオブジェクトのアクセス許可をスクリプト化し、置換サーバーでスクリプトを実行しました。

+0

私もこれを行います。 SqlPubWizはこの前の唯一のオプションでした。 –

関連する問題