ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 웹 백엔드 - 1. SQL & JDBC 프로그래밍(2)
    공부일기/부스트코스 2021. 1. 2. 15:21

    INSERT문

    기본 문형

    insert into 테이블명(필드1, 필드2, 필드3, 필드4 ...)
        values (필드1의 값, 필드2의 값, 필드3의 값, 필드4의 값 ...)

    insert into 테이블명
        values (필드1의 값, 필드2의 값, 필드3의 값, 필드4의 값 ...)
    • 필드명을 지정해주는 방식은 디폴트 값이 세팅되는 필드는 생략할 수 있다.
    • 필드명을 지정해주는 방식은 추후, 필드가 추가/변경/수정되는 변경에 유연하게 대처 가능하다.
    • 필드명을 생략했을 경우에는 모든 필드 값을 반드시 입력해야 한다. 
    • 컬럼명을 나열해 원하는 컬럼에 값 입력이 가능하지만, NOTNULL조건이나 PRIMARY키를 가진 컬럼의 경우 반드시 컬럼을 나열해 값을 입력해야한다.

     

     

     

    예) role 테이블에 role_id는 200, description에는 'CEO'로 한건의 데이터를 저장하시오.

     

    insert into를 이용해 데이터를 삽입했다.
    200, CEO가 추가된 것을 확인할 수 있다.

     

     

    update문

    기본문형

    update 테이블명
        set 필드1=필드1의 값, 필드2=필드2의 값, 필드3=필드3의 값 ...
        where 조건식
    • 조건식을 통해 특정 row만 변경가능하다.
    • 조건식을 주지 않으면 전체 로우가 영향을 미치니 조심해서 사용하도록 한다.

     

     

    예) role테이블에 role_id가 200일 경우 description을 'CTO'로 수정하시오.

     

     

     

    delete문

    기본 문형

    delete
        from 테이블명
        where 조건식
    • 조건식을 통해 특정 row만 삭제할 수 있다.
    • 조건식을 주지 않으면 전체 로우가 영향을 미치니 조심해서 사용하도록 한다.

     

     

    예) role 테이블에서 role_id가 200인 row를 삭제하시오.

     

     

     

     

     

    DDL(Data definition language)

    테이블을 정의하기 위해 테이블에 어떤 필드를 정의해야 하고, 어떤 테이터 타입을 사용하는지 알기 위해 테이터 타입을 정리한 표를 첨부한다.

    MYSQL 데이터타입1/ 이미지 출처: https://www.boostcourse.org/web326/lecture/58936
    MYSQL 데이터타입2/ 이미지 출처: https://www.boostcourse.org/web326/lecture/58936

     

     

    create

    기본 문형

    create table 테이블명(
            필드명1 타입 [NULL | NOT NULL] [DEFAULT] [AUTO_INCREMENT],
            필드명2 타입 [NULL | NOT NULL] [DEFAULT] [AUTO_INCREMENT],
            필드명3 타입 [NULL | NOT NULL] [DEFAULT] [AUTO_INCREMENT]
            ...
            PRIMARY KEY(필드명)
            );
    • 데이터 형 외에도 속성값의 빈 값 허용 여부는 NULL 또는 NOT NULL로 설정한다.
    • DEFAULT 키워드와 함께 입력하지 않았을 때의 초기값을 지정할 수 있다.
    • 입력하지 않고 자동으로 1씩 증가하는 번호를 위한 AUTO_INCREMENT

     

     

    예) employee 와 같은 구조를 가진 employee2 테이블을 생성하라.

     

     

     

     

    예) 책 제목과, 가격, isbn 필드를 지닌 테이블을 생성하라.

     

     

     

     

    alter

    기본 문형

    alter table 테이블명
            add 필드명 타입 [NULL | NOT NULL] [DEFAULT] [AUTO_INCREMENT]; // 컬럼 추가

    alter table 테이블명
            drop 필드명; // 컬럼 삭제

    alter table 테이블명
            change 필드명 새필드명 타입 [NULL | NOT NULL] [DEFAULT] [AUTO_INCREMENT]; // 컬럼 수정

    alter table 테이블명 rename 변경할 이름

     

     

    예) employee2 테이블에 생일(birthdate) 칼럼을 varchar(12) 형식으로 추가하시오.

     

     

     

    예) book 테이블에 isbn 컬럼을 삭제하고, author 컬럼을 varchar(20) 형식으로 추가하시오.

     

     

     

     

    예) employee2 테이블의 부서번호(deptno)를 dept_no로 수정하고, giredate를 hiredate로 수정하시오.

     

     

     

    예) employee2 테이블의 이름을 employee3로 변경하시오.

     

     

     

     

    테이블 삭제

    drop table 테이블명;

    제약조건이 있는 경우(fOREIGN KEY) drop table 명령으로 테이블이 삭제되지 않을 수 있다. 이런 경우 테이블을 생성한 반대 순서로 삭제해야 한다.

     

     

    예) employee3 테이블을 삭제하시오.

     

Designed by Tistory.