SQL Server Management Studio (SSMS) の使用に関するヒントとテクニック
この記事では、SQL Server Management Studio (SSMS) の使用に関するいくつかのヒントとテクニックをご紹介します。 この記事で取り上げるテクニック:
- Transact-SQL (T-SQL) のテキストをコメント化する/コメント解除する
- テキストをインデントする
- オブジェクト エクスプローラーでオブジェクトにフィルターを適用する
- SQL Server エラー ログにアクセスする
- SQL Server インスタンスの名前を検索する
前提条件
本記事で説明する手順をテストするには、SQL Server Management Studio、SQL Server のインスタンスへのアクセス、および AdventureWorks データベースが必要です。
- SQL Server Management Studio をインストールします。
- SQL Server Developer Edition をインストールします。
- AdventureWorks サンプル データベースをダウンロードする。 SSMS でデータベースを復元する方法については、データベースの復元に関するページを参照してください。
T-SQL コードをコメント化する/コメント解除する
ツール バーの [コメント] ボタンを使用し、テキストの一部をコメント化したり、コメント化を解除したりできます。 コメントにされたテキストは実行されません。
SQL Server Management Studioを開きます。
SQL Server インスタンスに接続します。
[新しいクエリ] ウィンドウを開きます。
次の Transact-SQL コードを、テキスト ウィンドウに貼り付けます。
USE master; GO --Drop the database if it already exists IF EXISTS (SELECT name FROM sys.databases WHERE name = N'TutorialDB') DROP DATABASE TutorialDB; GO CREATE DATABASE TutorialDB; GO ALTER DATABASE [TutorialDB] SET QUERY_STORE = ON; GO
テキストの Alter Database 部分を強調表示し、ツール バーの [コメント] ボタンを選択します。
[実行] を選択し、テキストのコメント解除された部分を実行します。
Alter Database コマンド以外をすべて強調表示し、 [コメント] ボタンを選択します。
Note
テキストをコメント化するためのキーボード ショートカットは CTRL + K、CTRL + C です。
テキストの Alter Database 部分を強調表示し、ツール バーの [Uncomment](コメントを解除する) ボタンを選択してコメントを解除します。
Note
テキストのコメントを解除するためのキーボード ショートカットは CTRL + K、CTRL + C です。
[実行] を選択し、テキストのコメント解除された部分を実行します。
テキストをインデントする
ツール バーのインデント ボタンを使用し、テキストのインデントを増減できます。
[新しいクエリ] ウィンドウを開きます。
次の Transact-SQL コードを、テキスト ウィンドウに貼り付けます。
USE master; GO --Drop the database if it already exists IF EXISTS (SELECT name FROM sys.databases WHERE name = N'TutorialDB') DROP DATABASE TutorialDB; GO CREATE DATABASE TutorialDB; GO ALTER DATABASE [TutorialDB] SET QUERY_STORE = ON; GO
テキストの Alter Database の部分を強調表示し、ツール バーの [インデントを増やす]のボタン を選択してこのテキストを前方に移動します。
テキストの Alter Database の部分を強調表示し、[インデントを減らす]の ボタンを選択してこのテキストを後方に移動します。
オブジェクト エクスプローラーでオブジェクトにフィルターを適用する
多くのオブジェクトが存在するデータベースでは、フィルタリングを使用して特定のテーブルやビューなどを検索することができます。このセクションではテーブルのフィルタリング方法について説明しますが、以下の手順はオブジェクトエクスプローラー内の他のノードでも使用できます。
SQL Server インスタンスに接続します。
[データベース]>[AdventureWorks]>[テーブル] の順に展開します。 データベース内のすべてのテーブルが表示されます。
[テーブル] を右クリックし、 [フィルター]>[フィルターの設定] の順に選択します。
[フィルターの設定] ウィンドウで、次のフィルター設定の一部を変更できます。
フィルターを消去するには、 [テーブル] を右クリックし、 [フィルターの削除] を選択します。
SQL Server のエラー ログにアクセスする
エラー ログは、SQL Server インスタンス内で発生したことに関する詳細な情報を含むファイルです。 SSMS では、エラー ログを参照したり、クエリを実行したりできます。 エラー ログは、ファイル システムに存在する.log ファイルです。
SSMS でエラー ログを開く
SQL Server インスタンスに接続します。
[管理]>[SQL Server ログ] の順に展開します。
[現在] のエラー ログを右クリックし、 [SQL Server ログの表示] を選択します。
SSMS でエラー ログにクエリを実行する
SQL Server インスタンスに接続します。
[新しいクエリ] ウィンドウを開きます。
次の Transact-SQL コードを、クエリ ウィンドウに貼り付けます。
EXECUTE sp_readerrorlog 0, 1,'Server process ID'
単一引用符で囲まれたテキストを検索するテキストに変更します。
クエリを実行し、結果を確認します。
SQL Server に接続されている場合にエラー ログの場所を検索する
SQL Server インスタンスに接続します。
[新しいクエリ] ウィンドウを開きます。
次の Transact-SQL コードをクエリ ウィンドウに貼り付けて、[実行] を選択します。
SELECT SERVERPROPERTY('ErrorLogFileName') AS 'Error log file location';
結果に、ファイル システム内のエラー ログの場所が示されます。
SQL Server に接続できない場合にエラー ログの場所を検索する
SQL Server のエラー ログのパスは、構成設定によって異なる場合があります。 エラーログの保存場所のパスは、SQL Server 構成マネージャー内の SQL Server 起動パラメータで確認できます。
次の手順に従って、SQL Server エラーログの場所を特定する関連のスタートアップパラメータを見つけます。 実際に表示されるパスはこの例のパスとは異なる場合があります。
SQL Server 構成マネージャーを開きます。
[サービス] を展開します。
SQL Server インスタンスを右クリックして、 [プロパティ] を選択します。
[起動時のパラメーター] タブを選択します。
既存のパラメーター領域で、
-e
の後のパスがエラー ログの場所です。この場所には複数のエラー ログ ファイルがあります。 *log で終わるファイル名が現在のエラー ログ ファイルです。 数字で終わるファイル名は以前のログ ファイルです。 SQL Server が再起動するたびに新しいログが作成されます。
任意のテキストエディタで errorlog.log ファイルを開きます。
SQL Server インスタンス名を見つける
SQL Server に接続する前と接続した後で、SQL Server インスタンスの名前を見つけるにはいくつかの方法があります。
SQL Server に接続する前
次の手順でディスク上の SQL Server エラー ログを探します。
メモ帳で errorlog.log ファイルを開きます。
Server name is というテキストを探します。
一重引用符で囲まれたテキストは、接続で使用する SQL Server インスタンスの名前です。
名前の形式は
HOSTNAME\INSTANCENAME
です。 ホスト名しか表示されない場合、既定のインスタンスをインストールしており、インスタンス名はMSSQLSERVER
です。 既定のインスタンスに接続するとき、ホスト名だけを入力して SQL Server に接続できます。 実際のパスはサンプル画像のパスとは異なる場合があります。
SQL Server に接続しているとき
SQL Server に接続しているとき、3 か所でサーバー名が見つかります。
サーバーの名前はオブジェクト エクスプローラーに表示されます。
サーバーの名前はクエリ ウィンドウに表示されます。
サーバーの名前は [プロパティ] に表示されます。
別名または可用性グループ リスナーに接続している場合
別名または可用性グループ リスナーに接続している場合、その情報はオブジェクト エクスプローラーとプロパティに表示されます。 その場合、SQL Server インスタンスの名前はすぐにはわからないことがあり、クエリを行う必要があります。
SQL Server インスタンスに接続します。
[新しいクエリ] ウィンドウを開きます。
次の Transact-SQL コードを、ウィンドウに貼り付けます。
SELECT @@Servername;
クエリの結果を見て、接続している SQL Server インスタンスの名前を確認します。