Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

삭제하지 않고 MySQL 뷰(VIEW) 정의를 수정하는 방법 – ALTER VIEW 활용법

MySQL에서 ALTER VIEW 문을 사용하면 기존 뷰(View)를 삭제할 필요 없이 그 정의를 손쉽게 수정할 수 있습니다. 뷰를 DROP한 후 다시 생성하는 번거로운 과정을 거치지 않고도 SELECT 쿼리 구조를 변경할 수 있다는 점이 큰 장점입니다.

ALTER VIEW 기본 문법

ALTER VIEW view_name AS
SELECT column1, column2…
FROM table
WHERE conditions;

기존 뷰 이름 뒤에 새로운 SELECT 문을 지정하기만 하면 됩니다. WHERE 조건문 역시 필요에 따라 자유롭게 추가하거나 변경할 수 있습니다.

실습 예제

설명을 위해 'Info'라는 이름의 뷰를 예로 들어 보겠습니다. 현재 이 뷰는 다음과 같은 데이터를 포함하고 있습니다.

mysql> Select * from Info;
+------+---------+------------+
| Id   | Name    | Subject    |
+------+---------+------------+
| 101  | YashPal | History    |
| 105  | Gaurav  | Literature |
| 125  | Raman   | Computers  |
| 130  | Ram     | Computers  |
+------+---------+------------+
4 rows in set (0.01 sec)

뷰에 새로운 컬럼 추가하기

이제 이 뷰에 ADDRESS 컬럼을 하나 더 추가하고 싶다고 가정해 보겠습니다. ALTER VIEW 문을 사용하면 다음과 같이 간단히 처리할 수 있습니다.

mysql> Alter view info AS SELECT ID, NAME, SUBJECT, ADDRESS from student_info;
Query OK, 0 rows affected (0.07 sec)

mysql> Select * from info;
+------+---------+------------+------------+
| ID   | NAME    | SUBJECT    | ADDRESS    |
+------+---------+------------+------------+
| 101  | YashPal | History    | Amritsar   |
| 105  | Gaurav  | Literature | Chandigarh |
| 125  | Raman   | Computers  | Shimla     |
| 130  | Ram     | Computers  | Jhansi     |
+------+---------+------------+------------+
4 rows in set (0.00 sec)

위 결과 집합을 보면 ADDRESS 컬럼이 'Info' 뷰에 성공적으로 추가된 것을 확인할 수 있습니다. 이처럼 ALTER VIEW 문을 활용하면 원본 테이블이나 뷰 자체를 삭제·재생성하지 않고도 뷰의 구조를 유연하게 변경할 수 있습니다.