INSERT INTO 테이블 VALUES(값1, 값2 ...) // 전체 컬럼
INSERT INTO 테이블(컬럼1, 컬럼2) VALUES(값1, 값2 ...) // 선택한 컬럼만 데이터 입력
//서브쿼리를 이용한 여러 행 INSERT
INSERT INTO EMP3(EMPNO, ENAME, DEPTNO)
SELECT EMPNO, ENAME, DEPTNO FROM EMP WHERE DEPTNO = 20;
UPDATE 테이블명
SET 수정할 컬럼 = 수정값
WHERE 조건;
// 서브쿼리의 결과가 수정할 각 행의 값마다 하나씩 전달되야 함
UPDATE EMP
SET (SAL, COMM) = (SELECT MAX(SAL), MAX(COMM) FROM EMP)
WHERE ENAME = 'SMITH';
DELETE [FROM] 테이블명 [WHERE 조건];
DELETE MERGE_OLD WEHRE NO=3;
MERGE INTO 테이블명
USING 참조테이블
ON (연결조건)
WHEN MATCHED THEN
UPDATE
SET 수정할내용
WHEN NOT MATCHED THEN
INSERT VALUES(삽입할 내용)
MERGE INTO MERGE_OLD M1 // 수정할 테이블 명을 MERGE INTO절에 명시
USING MERGE_NEW M2 // 참조테이블을 USING절에 명시
ON (M1.NO = M2.NO) // 참조 조건 괄호 필수
WHEN MATCHED THEN
UPDATE
SET M1.PRICE = M2.PRICE // UPDATE 문에서는 테이블명 명시 X
WHEN NOT MATCHED THEN
INSERT VALUES(M2.NO, M2.NAME, M2.PRICE);
// INSERT 문에는 INTO절 없이 VALUES로 참조 컬럼명 전달
CREATE TABLE [소유자.]테이블명(
컬럼1 데이터타입 [DEFAULT 기본값] [제약조건],
컬럼2 데이터타입 [DEFAULT 기본값] [제약조건],
....);
// 테이블 복제 (제약조건, INDEX등은 복제안됨)
CREATE TABLE 테이블명
AS
SELECT * FROM 복제 테이블명;
ALTER TABLE 테이블명 ADD 컬럼명 데이터타입 [DEFAULT] [제약조건]
// 컬럼추가
ALTER TABLE EMP_T1 ADD (BIRTHDAY3 DATE, BIRTHDAY4 DATE);
// 컬럼 속성 변경 (사이즈, 데이터타입, default)
ALTER TABLE 테이블명 MODIFY(컬럼명 DEFAULT 값);
// 컬럼 사이즈 변경
ALTER TABLE 테이블명 MODIFY(컬럼명 NUMBER(10));
// 빈 컬럼일 경우 데이터 타입 변경 가능
ALTER TABLE 테이블명 MODIFY 컬럼명 변경할 데이터타입;
// default 값 변경
ALTER TABLE 테이블명 MODIFY 컬럼명 default 값;
// 컬럼 이름 변경 (동시 여러 컬럼 변경 불가)
ALTER TABLE 테이블명 RENAME COLUMN 기존컬럼명 TO 새컬럼명;
// 컬럼 삭제 (데이터 존재 여부와 상관없이 삭제 가능, 동시에 여러컬럼 삭제 불가)
ALTER TABLE 테이블명 DROP COLUMN 컬럼명
DROP TABLE 테이블
TURNCATE TABLE 테이블명;
// 테이블 생성 시 제약조건 생성
CREATE TABLE 테이블명 (
컬럼1 데이터타입 [DEFAULT 기본값] [제약조건] ...);
// 컬럼 추가 시 제약조건 생성
ALTER TABLE 테이블명 ADD 컬럼명 데이터타입 [DEFAULT 기본값] [제약조건];
// 이미 생성된 컬럼에 제약조건만 추가
ALTER TABLE 테이블명 ADD [CONSTRAINT 제약조건명] 제약조건 종류;
// 제약조건 삭제
ALTER TABLE 테이블명 DROP CONSTRAINT 제약조건명;
// 뷰 생성 및 조회
CREATE VIEW VIEW_EMP_DEPT
AS
SELECT E.EMPNO, E.ENAME, E.SAL, D.DNAME
FROM EMP E, DEPT D
WHERE E.DEPTNO = D.DEPTNO;
SELECT * FROM VIEW_EMP_DEPT;
GRNAT 권한 ON 테이블명 TO 유저;
// 오브젝트 권한 부여
GRANT SELECT, INSERT ON PROFESSOR TO HR, BI;
// 시스템 권한 부여
GRANT CREATE TABLE, DROP ANY TABLE TO HR
REVOKE 권한 ON 테이블명 FROM 유저;
CREATE ROLE 롤이름;
홍쌤의 데이터랩
SQLD 2과목 PART3. 관리 구문 완벽정리 (2024년 신유형 반영) 강의에 대해
공부 및 개인적으로 정리한 글 입니다.