結果グリッドでクエリ出力を取得したら、いくつかの行の値を編集したいと思います。テーブルを右クリックし、「テーブルを開く」と言って編集可能なテーブル出力を取得できることは事実ですが、必要なのは編集可能なクエリ出力、条件に一致する特定の行のみであり、結果グリッドでそれらを編集します。
これはMicrosoft SQL Server Management Studio Express内で可能ですか?
結果グリッドでクエリ出力を取得したら、いくつかの行の値を編集したいと思います。テーブルを右クリックし、「テーブルを開く」と言って編集可能なテーブル出力を取得できることは事実ですが、必要なのは編集可能なクエリ出力、条件に一致する特定の行のみであり、結果グリッドでそれらを編集します。
これはMicrosoft SQL Server Management Studio Express内で可能ですか?
回答:
あなたが望むものに似た何かをすることができます。テーブルを右クリックし、[SQL Server 2008を使用している場合は[上位200行を編集])またはSQL Server 2005で[テーブルを開く]を選択します。そこに到達すると、上部に[SQL]と書かれたボタンがあります。クリックすると、SQLステートメントを記述でき、変更するセルをクリックすると、その結果を編集できます。
これを行う方法は次のとおりです。
Edit All Rows
(値が異なるテーブルからのものであっても、編集可能な値のグリッドが表示されます)。ビューに挿入/更新トリガーを追加して、ビューフィールドから値を取得し、T-SQLを使用して複数のテーブルの更新を管理することもできます。
SSMS-編集200の結果を右クリック| オプション| ペイン| SQL-ステートメントを編集します。
いいえ。結果グリッドを編集する方法はありません。結果グリッドは主に、実行したクエリの目的を表示するためのものです。
これは、誰でも複雑なクエリを実行できるためです。うまくいけば、次のリリースでは、この種の機能が含まれる予定です。
あなたの質問にお答えしたいと思います。
クエリがビューとして記述されている場合は、ビューを編集して値を更新できます。すべてのビューで値を更新することはできません。特定のビューでのみ可能です。詳細については、MSDNリンクの表示によるデータの変更を参照してください。クエリのビューを作成し、以下のように200行を編集できます。
明確にするために:オプション「上位行の編集コマンド」は、結果セットが編集可能かどうかに関係ありません。結果セットを制限する方法の1つにすぎません。
1つだけのテーブルに基づくクエリの結果セットを編集することは、常に可能です。
複数のテーブルに基づくクエリの結果セットは、次の条件が満たされる可能性があります:結果セットのフィールドがクエリの1つだけのベーステーブルに属している場合、それらのフィールドを一度に編集できます。フィールドが主キーの場合、次回行を編集できるようにするには、各行の更新後に更新/「SQLの実行」(Ctrl + R)を実行する必要があります。フィールドが主キーでない場合、更新/「SQLの実行」(Ctrl + R)を実行する必要はありません。
SQL Server 2008-2016でテストしました!