본문 바로가기

✨ DBMS/MySQL5

[SQL] 뷰(VIEW) 활용하기 2 - 수정 (OR REPLACE, ALTER) [SQL] 뷰(VIEW) 활용하기 , WITH CHECK OPTION 사용법 뷰(VIEW)란? 가상의 테이블로, 한 번 생성해 놓으면 테이블로 생각하고 사용해도 될 만큼 사용자가 볼 때 테이블과 거의 동일한 개체로 여겨진다. Student 테이블, Professor 테이블 Student테이블과 Profes bright-landscape.tistory.com EMP 테이블을 기반으로 EMPEX 뷰 테이블을 하나 만들어주었고, EMPVIEW1 이라는 가상 뷰 테이블을 생성하여, 조건문을 주며 출력해보았다. 이런식으로 VIEW 를 수정하는 방법에는 두가지가 있다. 첫번째는, ALTER를 이용해서 뷰를 수정하는 방법이고, 두번째는 OR REPLACE를 이용한 것이다. 단, OR REPLACE는 앞에 ALTER가.. 2023. 8. 2.
[MySQL / SQL] - JOIN 조인 (Cross , Equi , Self , Outer , Union ) 위에는 EMP 테이블, SALGRADE 테이블, DEPT 테이블이 있다. 상호 조인 ( Cross Join) 이란? 테이블들을 연결하여 연속적으로 기술하는 것이다. 컬럼 수는 EMP 컬럼수 + DEPT 컬럼수 + SALGRADE 컬럼수를 더한 것이되고, 행 수는 EMP 행 * DEPT 행 * SALGRADE 행이 된다. 조인될 때 아무런 조건을 제시하지 못했기 때문에 이 CROSS 조인은 아무런 의미가 없다. 따라서 조건을 사용하는 다양한 JOIN에 대해 더 알아보자. Equi(Inner) Join 이란? 동일 칼럼을 기준으로 조인. N개의 테이블 조인시 N-1개의 조인 조건이 필요하다. 공통적으로 존재하는 컬럼의 값이 일치되는 행을 연결하여 결과를 생성하는 조인 방법이다. EQUI JOIN은 가장 많이.. 2023. 7. 29.
[MySQL / SQL] - 주요 함수 ( 숫자, 문자 , 시간, 날짜) MySQL을 사용하다보면 다른 데이터베이스와도 조금씩 다른 함수들이 존재한다. 따라서 나중에 한눈에 확인해서 사용할 수 있도록 조금씩 정리해두려고한다. 숫자 HTML 삽입 미리보기할 수 없는 소스 문자 HTML 삽입 미리보기할 수 없는 소스 시간 및 날짜 HTML 삽입 미리보기할 수 없는 소스 HTML 삽입 미리보기할 수 없는 소스 2023. 7. 27.
[SQL] 뷰(VIEW) 활용하기 , WITH CHECK OPTION 사용법 뷰(VIEW)란? 가상의 테이블로, 한 번 생성해 놓으면 테이블로 생각하고 사용해도 될 만큼 사용자가 볼 때 테이블과 거의 동일한 개체로 여겨진다. Student 테이블, Professor 테이블 Student테이블과 Professor 테이블이 있다. STUDENT 테이블과 PROFESSOR 테이블을 합쳐 EMP_VIEW 가상 테이블을 만들어주었다. 뷰 테이블을 만들어줄 때에는 CREATE VIEW 테이블명 AS 를 하고 SELECT를 통해 조회할 컬럼을 입력해주면 된다. *뷰는 기본적으로 읽기 전용이지만, 뷰를 통해 원래 테이블의 수정도 가능하다. 하지만, 이런 방법은 추천하지 않는다. 뷰의 장점 보안에 도움이 된다. 복잡한 쿼리를 단순화해준다. UPDATE 이용하여 VIEW 테이블 수정하기. UPDA.. 2023. 7. 27.
[MySQL / SQL] 테이블 구조 생성, 변경, 삭제 (DDL) -- 데이터베이스 생성 명령어 CREATE DATABASE [dbname]; -- 데이터베이스 생성 및 속성 설정 명령어 CREATE DATABASE [dbname] CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; -- 테이블 생성 명령어 CREATE TABLE [tablename] ( [column_name1] INT PRIMARY KEY AUTO_INCREMENT, [column_name2] VARCHAR(255) NOT NULL, [column_name3] DATETIME NOT NULL, )CHARSET=utf8; DROP 명령어 -- 데이터베이스 삭제 명령어 DROP DATABASE [dbname]; -- 테이블 삭제 명령어 DROP TABLE [tabl.. 2023. 7. 26.