Azure SQL データベース用 Azure portal クエリ エディター
適用対象: Azure SQL データベース
クエリ エディター (プレビュー) は、Azure SQL Database に対し、ブラウザーの Azure portal で T-SQL クエリを実行するツールです。
- Azure portal クエリ エディターのクイックスタートについては、「クイック スタート: Azure portal のクエリ エディターを使用する (プレビュー)」を参照してください。
- より高度なオブジェクト エクスプローラー機能と管理機能の場合は、Azure Data Studio または SQL Server Management Studio (SSMS) を使います。
- Azure SQL データベースの Microsoft Copilot スキル (プレビュー) の詳細については、「Azure SQL データベースの Microsoft Copilot スキル (プレビュー)」を参照してください。 チュートリアルと 例については、「Azure portal クエリ エディター (プレビュー) の自然言語から SQL」を参照してください。
- Azure SQL データベースをまだ作成していない場合は、「クイック スタート: 単一データベースを作成する」を参照してください。 プランを使用して Azure SQL データベースを無料 (プレビュー) で試すオプションを探します。
Azure portal から Azure SQL Database にクエリを実行する
クエリ エディターは、すべて Azure portal のブラウザー内から、Azure SQL データベースへの軽量なクエリ実行とオブジェクトの確認用に設計されています。 データベースに対して T-SQL クエリを実行するだけでなく、組み込みの表形式の データ エディターでデータを編集することもできます。
SQL Server Management Studio のクエリ エクスペリエンスと同様に、単純なクエリまたは大規模な T-SQL クエリの両方に対し、クエリ エディターを使用します。 データ操作言語 (DML) クエリとデータ定義言語 (DDL) クエリを実行できます。
ヒント
新規の Azure SQL データベース? Azure SQL Fundamentals という詳細な無料トレーニング コンテンツ を使用して、迅速に作業を開始します。
クエリ エディターを使って接続する
クエリ エディターには、SQL 認証または Microsoft Entra ID (旧称 Azure Active Directory) による認証の 2 つの認証オプションがあります。
Azure SQL Database への認証
例については、「クイック スタート: Azure portal のクエリ エディター (プレビュー) を使用して Azure SQL Database のクエリを実行する」を参照してください。
- クエリ エディターで SQL 認証を使って Azure SQL データベースに接続するには、論理サーバーの
master
データベースでのログイン、または目的のユーザー データベースに含まれる SQL ユーザーが必要です。 詳細については、ログインに関する記事を参照してください。- ユーザー名とパスワードを入力してから、[OK] を選びます。
- Microsoft Entra 認証を使用してクエリ エディターを使用して Azure SQL データベースに接続するには、データベースが Microsoft Entra 認証を使用して構成されている必要があり、Microsoft Entra ユーザーがデータベース内に作成されている必要があります。
- [<user@domain> として続行] を選択します。
クエリ エディターにアクセスするために必要なアクセス許可
ユーザーがクエリ エディターを使うには、少なくとも Azure ロールベースのアクセス制御 (RBAC) のアクセス許可であるサーバーとデータベースへの読み取りアクセスが必要です。
クエリ エディター内を移動する
クエリ エディターには、4 つの主要なセクションがあります。
ナビゲーション バー
ナビゲーション バーでは 4 つのタスクを実行できます。
- [ログイン] を使うと、認証 コンテキストを変更できます。
- [新しいクエリ] を使うと、空のクエリ ウィンドウを開くことができます。
- [クエリを開く] を使うと、ローカル コンピューターから最大 10 個の
.sql
または.txt
ファイルを選び、クエリ ウィンドウで開くことができます。 - Azure SQL Database クエリ エディターでフィードバックを提供できます。
オブジェクト エクスプローラー
オブジェクト エクスプローラーを使うと、データベースのテーブル、ビュー、ストアド プロシージャに対するタスクを表示して実行できます。
- [テーブル] を展開すると、データベース内のテーブルの一覧が表示されます。 テーブルを展開すると、テーブル内の列が表示されます。 省略記号を使って上位 1,000 行を選んだり、データ エディターにアクセスしたり、テーブル名を変更したりできます。 テーブルの名前を変更する場合は、最新情報への更新矢印を使って変更を確認します。
- [ビュー] を展開すると、データベース内のビューの一覧が表示されます。 ビューを展開すると、ビュー内の列が表示されます。 省略記号を使って、上位 1,000 行を選んだり、ビューの名前を変更したりできます。 ビューの名前を変更する場合は、最新情報への更新矢印を使って変更を確認します。
- [ストアド プロシージャ] を展開すると、データベース内のすべてのストアド プロシージャの一覧が表示されます。 ストアド プロシージャを展開すると、ストアド プロシージャの出力が表示されます。 省略記号を使って、ストアド プロシージャの定義をクエリ ウィンドウに表示できます。
クエリ ウィンドウ
このウィンドウでは、クエリを入力するか貼り付けてから実行できます。 クエリの結果は [結果] ペインに表示されます。
クエリを取り消すことができます。 「考慮事項と制限事項」で説明されているように、5 分間のタイムアウト期間があります。
[クエリの保存] ボタンを使うと、クエリ テキストを .sql ファイルとしてコンピューターに保存できます。
[データを <ファイル形式> としてエクスポート] ボタンを使うと、クエリ結果を .json、.csv、または .xml ファイルとしてコンピューターにエクスポートできます。
クエリの実行時間またはエラーが、ステータス バーに表示されます。
Azure SQL データベースの Microsoft Copilot スキル (プレビュー)
Microsoft Copilot は、Azure SQL データベース駆動型アプリケーションの設計、操作、最適化、正常性を合理化するように設計された AI アシスタントです。 自然言語から SQL への変換とデータベース管理のセルフヘルプを提供することで、Azure portal の生産性が向上します。
Azure SQL データベースの Azure portal クエリ エディター内での自然言語からSQL エクスペリエンスにより、自然言語クエリが SQL に変換され、データベースの操作がより直感的になります。
自然言語から Copilot の SQL 機能へのチュートリアルと例については、「Azure portal クエリ エディターでの SQL への自然言語 (プレビュー)」を参照してください。 詳細については、「Azure SQL データベースの Microsoft Copilot スキル (プレビュー) に関してよく寄せられる質問」を参照してください。
データ エディター
データ エディターを使うと、既存行のデータの変更、新しいデータ行のテーブルへの追加、データ行の削除を行うことができます。 これは、SQL Server Management Studio (SSMS) のエクスペリエンスと似ています。
データ エディターにアクセスするには、オブジェクト エクスプローラーで [テーブル] を展開し、テーブル名の右側にある省略記号を選んで、[データを編集します (プレビュー)] を選びます。
既存の行のデータを変更するには、変更する値を選択し、変更を行い、上部にある [保存] を選択します。
- 列が ID 列の場合、その値を編集することはできません。
Save failed: Failed to execute query. Error: Cannot update identity column *column_name*
のエラー メッセージ が表示されます。
新しい行を追加するには、[新しい行を作成します] を選択し、追加する値を入力します。 このコンテキストでは、追加または操作できない特定のデータの種類があります。
- 列が ID 列の場合、そのフィールドには値を追加できません。
Save failed: Cannot set value in identity columns *column_name*
のエラー メッセージ が表示されます。 - 既定の制約を持つ列は受け入れられません。 データ エディターでは既定値は生成されません。ユーザーが値を入力する必要があります。 既定の列制約を持つテーブルにデータ エディターを使用することはお勧めしません。
- 計算列は計算されません。 エラー メッセージ
Save failed: Failed to execute query. Error: The column *column_name* cannot be modified because it is either a computed column or is the result of a UNION operator.
が表示されます。計算列があるテーブルにはデータ エディターを使用することはお勧めしません。
行を削除するには、行を選択し、[行の削除] を選択します。
- 行に主キーがあり、その主キーに別のテーブルとの外部キー リレーションシップがある場合、その行を削除すると、他のテーブルの関連行も削除されます。
考慮事項と制限事項
Azure portal クエリ エディターを使用して Azure SQL Database に接続し、クエリを実行する場合、次の考慮事項と制限事項が適用されます。
クエリ エディターの制限事項
- クエリに複数のステートメントがある場合、[結果] タブに表示されるのは最後のステートメントの結果のみです。
- クエリ エディターでは、論理サーバーの
master
データベースへの接続はサポートされていません。master
データベースに接続するには、他のツールを使用して Azure SQL Database にクエリを実行します。 - クエリ エディターは、
ApplicationIntent=ReadOnly
で レプリカ データベースに接続できません。 この方法で接続するには、SSMS を使い、[Additional Connection Parameters] (追加の接続パラメーター) タブの接続オプションでApplicationIntent=ReadOnly
を指定します。 詳細については、「読み取り専用レプリカに接続する」を参照してください。 - クエリ エディターでのクエリの実行は、5 分でタイムアウトします。 さらに長いクエリを実行するには、他のツールを使用して Azure SQL Database にクエリを実行します。
- geography データ型に関してクエリ エディターでサポートされるのは円柱投影のみです。
- クエリ エディターでは、データベースのテーブルとビューの IntelliSense はサポートされていませんが、既に入力されている名前のオートコンプリートはサポートされています。 IntelliSense を活用するには、他のツールを使用して Azure SQL Database にクエリを実行します。
- F5 キーを押すとクエリ エディター ページが更新され、現在エディター内にあるクエリは保存されません。
Azure SQL Database にクエリを実行するその他の方法
Azure SQL Database 用 Azure portal クエリ エディターに加えて、他のツールについては次のクイックスタートをご検討ください。
- クイック スタート:Azure Data Studio を使用して、Azure SQL Database に接続してクエリを実行する
- クイック スタート:SSMS を使用して Azure SQL Database または Azure SQL Managed Instance に接続してクエリを実行する
- クイック スタート:Visual Studio Code を使って接続し、クエリを実行する
接続に関する考慮事項
- クエリ エディターへのパブリック接続の場合、お使いのデータベースにアクセスできるようにするには、サーバーの許可されたファイアウォール規則に、アウトバウンド IP アドレスを追加する必要があります。
- サーバーにプライベート リンク接続が設定されていて、プライベート仮想ネットワーク内からサーバーに接続する場合は、SQL サーバーのファイアウォール規則に IP アドレスを追加する必要はありません。
接続エラーのトラブルシューティング
エラー メッセージ
The X-CSRF-Signature header could not be validated
が表示される場合は、次のアクションを実行して問題を解決します。- コンピューターの時計が正しい時刻およびタイム ゾーンに設定されていることを確認します。 データベースの場所 (米国東部など) のタイム ゾーンを検索して、コンピューターのタイム ゾーンを Azure と一致するように試みることもできます。
- プロキシ ネットワーク上の場合、要求ヘッダー
X-CSRF-Signature
を変更または削除しないようにしてください。
データベースがサーバーレスで、次のエラー メッセージが表示される場合:
Database *name* on server *name.database.windows.net* is not currently available. Please retry the connection later. If the problem persists, contact customer support, and provide them the session tracing ID *ID*
これは、サーバーレス データベースが現在一時停止していることを示します。 この場合、Continue as <user@domain>
を選ぶと、再開要求がデータベースに送信されます。 約 1 分待ってからページを最新の情報に更新し、もう一度やり直してください。次のエラー メッセージが表示される場合 "ユーザー '
<token-identified principal>
' はログインできませんでした。 サーバーは現在、このトークンを受け入れるように構成されていません。" (AD 認証を使おうとしたとき)、ユーザーはデータベースへのアクセス権を持っていません。- Microsoft Entra プリンシパルからのユーザーの作成に関する詳細は、「Azure SQL での Microsoft Entra 認証を構成して管理する」を参照し、ユーザー データベースで
CREATE USER [group or user] FROM EXTERNAL PROVIDER
を使用してください。
- Microsoft Entra プリンシパルからのユーザーの作成に関する詳細は、「Azure SQL での Microsoft Entra 認証を構成して管理する」を参照し、ユーザー データベースで
ポート 443 と 1443 の接続
クエリ エディターに次のエラーのいずれかが表示される場合があります。
Your local network settings might be preventing the Query Editor from issuing queries. Please click here for instructions on how to configure your network settings.
A connection to the server could not be established. This might indicate an issue with your local firewall configuration or your network proxy settings.
これらのエラーは、クエリ エディターがポート 443 および 1443 を介して通信できないために発生します。 これらのポートでアウトバウンド HTTPS トラフィックを有効にする必要があります。 次の手順では、このプロセスを OS 別に説明します。 会社の IT 部門は、ローカル ネットワークでこの接続を開く承認を得ることが必要な場合があります。
Windows Defender ファイアウォールで 443 と 1443 を許可する
- [Windows Defender ファイアウォール] を開きます。
- 左側のメニューで、[詳細設定] を選択します。
- [セキュリティが強化された Windows Defender ファイアウォール] の左側のメニューで、[アウトバウンド規則] を選択します。
- 右側のメニューで [新しい規則] を選択します。
- [新規のアウトバウンド規則ウィザード] で、次の手順に従います。
- 作成する規則の種類として [ポート] を選択し、[次へ] を選択します。
- [TCP] を選択します。
- [特定のリモート ポート] を選択し、「
443, 1443
」と入力し、[次へ] を選択します。 - [セキュリティで保護されている場合、接続を許可する]、[次へ] の順に選択し、[次へ] を再度選択します。
- [ドメイン]、[プライベート]、[パブリック] は選択したままにします。
- 規則に名前を付けます (たとえば、Access Azure SQL query editorなど)、説明 (省略可能) を指定します。 [完了] を選択します。
MacOS で 443 と 1443 を許可する
- Apple メニューで、[システム環境設定] を開きます。
- [セキュリティとプライバシー] を選択後、[ファイアウォール] を選択します。
- [ファイアウォール]がオフの場合、[変更を行うにはロックをクリックする] を選択し、[ファイアウォールを有効にする] を選択します。
- [Firewall Options](ファイアウォールのオプション) を選びます。
- [セキュリティとプライバシー] ウィンドウで、[署名されたソフトウェアが着信接続を受信するのを自動的に許可する] を選択します。
Linux で 443 と 1443 を許可する
次のコマンドを実行して iptables
を更新します
sudo iptables -A OUTPUT -p tcp --dport 443 -j ACCEPT
sudo iptables -A OUTPUT -p tcp --dport 1443 -j ACCEPT
Azure VM で 443 と 1443 を許可する
Azure VM を使用する場合、接続をブロックする Azure ネットワーク セキュリティ グループ があります。 ネットワーク セキュリティ グループは、Azure 仮想ネットワーク内の Azure リソースが送受信するネットワーク トラフィックをフィルター処理できます。 ネットワーク セキュリティ グループに送信セキュリティ ルールを追加する必要があります。 例については、「セキュリティ規則の作成」を参照してください。