プログラ生活

プログラム初学者のためのポイントを書いていこうと思います。たまに脇道それた記事もありますが、息抜きだとおもって気長にお付き合いください。

【SQL Server(連載)】ビューの変更・削除 -23-

www.pon-x.jp

前回の続き

前回からビューをやっておりますが、今回はその続きです。
今回はビューの変更と削除を行います。

ビューの確認

まず、ビューってどこにしまわれているの!?という疑問があろうと思うので、格納場所を確認しておきます。
SSMSの左側にオブジェクトエクスプローラーがデフォルトで表示されていると思います。
その中から、「データベース」→「AdventureWorks2019」→「ビュー」を開くとビューの一覧が表示され、自分が作成したビューも確認できます。
こんなかんじです。
f:id:hanabusa-snow:20201208090825p:plain

ビューの変更

ビューの中身を変更する方法を紹介します。
ちなみに、前回作ったビューの中身をおさらいしておきます。

CREATE VIEW TEST_VIEW
AS
SELECT 
    PersonType,
    COUNT(PPP.BusinessEntityID) AS CNT
FROM Person.Person PP
    INNER JOIN Person.PersonPhone PPP
        ON PP.BusinessEntityID = PPP.BusinessEntityID
WHERE PPP.PhoneNumberTypeID = 1
GROUP BY PersonType

こんなかんじでした。
これについて、WHERE句を変更してみたいと思います。

やり方はとっても簡単です。
CREATEだった部分をALTERに変えるだけ。
あとは、本文の変更したい箇所を変えておきましょう。

ALTER VIEW TEST_VIEW
AS
SELECT 
    PersonType,
    COUNT(PPP.BusinessEntityID) AS CNT
FROM Person.Person PP
    INNER JOIN Person.PersonPhone PPP
        ON PP.BusinessEntityID = PPP.BusinessEntityID
WHERE PPP.PhoneNumberTypeID = 2
GROUP BY PersonType

こんなかんじに変更できました。
f:id:hanabusa-snow:20201208091825p:plain

既存のビューの中身を確認する

変更するときに、すでに作成されているビューを確認して修正したいっていうときはよくあって、そんなときは参照したうえで修正をします。
オブジェクトエクスプローラーから「対象のビューを右クリック」→「ビューのスクリプト化」→「新規作成」→「新しいクエリ エディタ ウインドウ」を選択
以下の通りです。
f:id:hanabusa-snow:20201208091245p:plain

以下のような画面が出てくると思います。
f:id:hanabusa-snow:20201208091325p:plain

すでに、ALTER表記がされているので、それ以下のSQLを書き換えてあげるだけでOKです。
便利ですよね!!

ビューの削除

ビューの削除は細かいことはありません。
DROPで行えます。

DROP VIEW TEST_VIEW

こんなかんじです。
f:id:hanabusa-snow:20201208090256p:plain







以上、今回はここまで。