SSDT の既存のデータベースに接続する

この記事では、ユーザーが SQL Server Data Tools (SSDT) で既存のデータベースに接続する方法について説明します。 SSDT を使用すると、既存のデータベースに接続し、Transact-SQL (T-SQL) を使用してクエリを実行し、結果を表示できます。

SSDT には、データベースの操作に使用できる多数の機能も用意されています。 これらについては、次のセクションで詳しく説明します。 既存のデータベースに接続する方法を理解しましょう。

既存のデータベースに接続するには、次の手順を参照してください。

SQL Server オブジェクト エクスプローラーを使用してデータベースに接続する

SQL Server オブジェクト エクスプローラー (SSOX) は、SSDT for Visual Studio で使用できるツールです。 これにより、Visual Studio 内で SQL Server データベースに接続し、管理することができます。 SSDT で SQL Server オブジェクト エクスプローラーを使用してデータベースに接続するには、次の手順に従います。

  1. Visual Studio を開く: SSDTがVisual Studioの適切なバージョンと共にインストールされていることを確認してください。 Visual Studio を起動します。

  2. SQL Server オブジェクト エクスプローラー を開く: [表示] メニューに移動し、[SQL Server オブジェクト エクスプローラー] を選択します。 または、ショートカット Ctrl + \(バックスラッシュ) を使用し、「Ctrl + S」と入力することもできます。

  3. データベース サーバーへの接続: [SQL Server オブジェクト エクスプローラー] ウィンドウで、[SQL Server の追加] ボタン (+ アイコンのあるシートのようなものが左上にあります) を選択するか、SQL Server ノードを右クリックして [SQL Server の追加] を選択します。

  4. サーバー接続の詳細を入力する: [接続] ダイアログ ボックスで、接続先の SQL Server インスタンスの接続の詳細を入力します。 これには、サーバー名、認証方法 (Windows 認証や SQL Server 認証など)、ログイン資格情報 (該当する場合)、暗号化の詳細などが含まれます。 SQL Server インスタンスが接続されると、[履歴] タブの [最近使用した接続] オプションの下に自動的に表示されます。

  5. テスト接続: 接続の詳細を入力したら、[接続] ボタンを選択すると接続をテストできます。 接続に成功すると、インスタンスとそのデータベースが SQL Server オブジェクト エクスプローラーに一覧表示されます。

  6. データベース間の移動と管理: 接続したら、サーバー ノードを展開して、そのインスタンスでホストされているすべてのデータベースを表示できます。 各データベース ノードをさらに拡張すると、そのテーブル、ビュー、ストアド プロシージャ、およびその他のデータベース オブジェクトを調べることができます。

  7. アクションの実行: データベースまたは任意のオブジェクトを右クリックして、データのクエリ、新しいオブジェクトの作成、既存のオブジェクトの編集などのさまざまなアクションを実行します。

[接続] ダイアログ ボックスのスクリーンショット。

認証のタイプ

SSDT を使用すると、ローカル コンピューター、ネットワーク、Azure 上のデータベースに接続できます。 さまざまなシナリオを考慮して、複数の認証タイプに対応しています。 次のとおりです:さまざまな種類の認証のスクリーンショット。

  • Windows 認証: この認証方法では、Windows セキュリティを使用して SQL Server に対してユーザーを認証します。

  • SQL Server 認証: この認証方法では、ユーザーが SQL Server ログインとパスワードを持っている必要があります。

  • Active Directory パスワード認証: この認証方法では、ユーザーの Active Directory パスワードを使用して SQL Server に対する認証を行います。 これは構成が最も簡単な認証方法ですが、追加のセキュリティ機能は提供されません。

  • Active Directory 統合認証: この認証方法では、SQL Server へのユーザー認証に Kerberos を使用します。 Kerberos は、Active Directory パスワード認証よりも安全な認証プロトコルですが、クライアントとサーバーの両方が Active Directory ドメインに参加している必要があります。

  • Active Directory 対話型認証: この認証方法では、ダイアログ ボックスにユーザーの Active Directory の資格情報を入力して SQL Server に対して認証を行います。 これは最も安全な認証方法ですが、ユーザーは SQL Server に接続するたびに資格情報を入力する必要があり、不便な場合があります。

まとめ

認証方法 説明
Windows 認証 Windows セキュリティ システムを使用して認証します。
SQL Server 認証 ユーザーは別の SQL Server ログインとパスワードを作成できます。
Active Directory パスワード認証 ユーザーの Active Directory パスワードを使用して、SQL Server に対する認証を行います。
Active Directory 統合認証 Kerberos を使用して SQL Server に対する認証を行います。
Active Directory 対話型認証 ダイアログ ボックスに Active Directory の資格情報を入力して、SQL Server に対する認証を行います。

サーバー証明書を暗号化して信頼する

Visual Studio 17.8 以降のバージョンの SSDT では、Encrypt プロパティに重要な変更が加わり、すべての接続で既定で有効になっています。 SQL Server は、信頼されたルート証明機関によって署名された TLS 証明書を使用して構成する必要があります。 また、暗号化を有効にして (既定で有効になっています) 最初の接続試行に失敗した場合、SSDT で Trust Server Certificate を有効にして接続を試行するオプションの通知プロンプトが表示されます。 Encrypt プロパティと Trust Server Certificate プロパティの両方を手動で編集することもできます。 サーバーに対する信頼されて暗号化された接続をサポートするのがベスト プラクティスです。

さまざまな種類の暗号化のスクリーンショット。

Azure SQL Database に接続するユーザーの場合、既存の保存された接続に対する変更は必要ありません。Azure SQL Database は、暗号化された接続をサポートしており、信頼された証明書で構成されています。

オンプレミスの SQL Server インスタンスまたは仮想マシンで実行中の SQL Server に接続しているユーザーは、EncryptTrue に設定されている場合、(自己署名証明書などではない) 信頼された証明機関からの証明書があることを確認してください。 または、暗号化なしで接続するか (EncryptFalse に設定する)、サーバー証明書を信頼する (EncryptTrue に設定し、Trust Server CertificateTrue に設定する) こともできます。

SQL Server が信頼された証明書で構成されておらず、Strict 暗号化を使用して接続しようとした場合、または Encrypt が設定 True に、Trust Server CertificateFalse に設定されている場合は、次のエラー メッセージが表示されます。

エラー メッセージのスクリーンショット。

この接続で暗号化が有効になっています。ターゲット SQL Server の SSL と証明書の構成を確認するか、接続ダイアログで [サーバー証明書を信頼する] を有効にしてください。

追加情報

サーバーとの接続は正常に確立されましたが、ログイン プロセスでエラーが発生しました。 (プロバイダー: SSL プロバイダー、エラー: 0 - 証明書チェーンは、信頼されていない機関によって発行されました。)(Microsoft SQL Server)

次のステップ