정보처리기사 실기 준비 SQL 2 (17일차)

모코코개발자·2024년 3월 17일
post-thumbnail

DDL (정의어)

  • CREATE

CREATE SCHEMA 스키마명 AUTHORIZATION 사용자;
CREATE DOMAIN 도메인명 데이터타입 DEFAULT 기본값;
CREATE TABLE 테이블명(
속성명 데이터타입,
속성명 데이터타입,
속성명 데이터타입,
PRIMARY KEY(속성명),
FOREIGN KEY(속성명) REFERENCES 참조테이블명(기본키속성명));

CREATE VIEW : 사용자에게 접근이 허용된 자료만을 제한적으로 보여주기 위해 하나 이상의 기본 테이블로부터 유도된 이름을 가지는 가상 테이블, 저장장치 내에 물리적으로 존재하지 않지만 사용자에게는 있는것 처럼 간주된다.

CREATE VIEW 뷰이름(속성명, 속성명 ---) AS SELECT문;
ex)
CREATE VIEW 대전고객(성명,전화번호) AS SELECT 성명, 전화번호 FROM 고객 WHERE 주소 = '대전';

  • ALTER

  • DROP
    DROP VIEW 대전고객 [RESTRICT/CASCADE];

  • RESTRICT : 뷰를 다른곳에서 참조하고 있으면 삭제 취소

  • CASCADE : 뷰를 참조하는 다른 뷰나 제약조건까지 모두 삭제

  • DML (조작어)

  • SELECT
    SELECT 속성명 FROM 테이블명 WHERE 조건 GROUP BY 속성명 HAVING 조건 ORDER BY 속성명 DESC;
    SELECT 속성명 FROM 테이블명 T -> 테이블명을 앞으로 T라고 하겠다. (AS)

  • DISTINCT (중복된 데이터 한번만 출력)

  • IN (300, 500) : 300이거나 500인 것

  • INSERT
    INSERT INTO 테이블명 VALUES(데이터);
    INSERT INTO 테이블명(속성명, 속성명 ...) VALUES(데이터..);

  • UPDATE : 튜플의 내용을 변경
    UPDATE 테이블명

  • DELETE
    DELETE FROM 테이블명 조건;

  • COUNT(*) : NULL 포함

  • COUNT(COLUMN) : NULL 제외

  • 사용자 정의 함수 : SELECT를 통한 조회만 가능. DML의 호출에 의해 실행.

  • JOIN :

  • DCL (제어어)

  • COMMIT

  • ROLLBACK / SAVEPOINT
    SAVEPOINT S1;
    ROLLBACK TO S1;
    세이브포인트 미지정시 COMMIT 후로 돌아감

  • GRANT
    GRANT 부여하려는권한 ON 테이블명 TO 누구에게;
    GRANT SELECT ON 학생 TO 안준수; // 학생 테이블 SELECT 권한 부여
    GRANT ALL ON 학생 TO 안준수;

  • REVOKE
    REVOKE 회수하려는 권한 ON 테이블명 FROM 누구로부터;
    REVOKE SELECT ON 학생 FROM 안준수; // 학생테이블 SELECT 권한 회수

문제

1번

CREATE INDEX 직원_NAME ON 직원(이름);

2번

GRANT ALL ON 학생 TO 홍길동;

3번

DELETE FROM 학생 WHERE 이름 = 'SCOTT';

4번

SELECT * FROM 수강 WHERE 과목명 = 'DB'ORDER BY 기말성적 DESC, 중간성적 ASC;

5번

profile
모코코개발자

0개의 댓글