[Zero-Base]데이터 취업 스쿨 스터디 노트(SQL-Table)

강현정·2024년 5월 28일

zero_base

목록 보기
29/54

🔨Table 생성

❗ 테이블을 생성하기 전에 어떤 데이터베이스를 사용할건지 선택 해야한다.

  • create table (테이블명); : 테이블 생성

  • show tables; : 데이터베이스 안에 있는 테이블 목록 확인

  • desc (테이블명); : 해당 테이블의 자세한 필드와 타입 확인

✏️Table 변경&삭제

  • alter table (원래 테이블명) rename (바꿀 테이블명); : 테이블 이름 변경

  • alter table (해당 테이블명) add column (추가할 컬럼명) (컬럼의 속성); : 컬럼 추가

  • alter table (해당 테이블명) modify column (컬럼이름) (속성); : 컬럼의 속성 변경

  • alter table (해당 테이블명) change column (원래 컬럼명) (바꿀 컬럼명) (컬럼 속성); : 해당 테이블의 컬럼명, 속성 변경

  • alter table (테이블명) drop column (컬럼명); : 컬럼 삭제

  • alter table (테이블명) drop primary key : 기본키 삭제
  • alter table (테이블명) add primary key(컬럼) : 기본키 설정

📌PRIMARY KEY, FOREIGN KEY

  • PRIMARY KEY: 테이블의 각 레코드를 식별, 중복되지 않은 고유값을 포함, NULL값을 포함할 수 없음, 테이블당 하나의 기본키를 가짐.
  • FOREIGN KEY : 한 테이블을 다른 테이블과 연결해주는 역할이며, 참조되는 테이블의 항목은 그 테이블의 기본키 (혹은 단일값)
  • show create table (테이블명); : 외래키 확인 가능ㅇ
#외래키 생성(제약조건 있음)
mysql> CREATE TABLE orders
    -> (    oid int not null,
    ->      order_no varchar(16),
    ->      pid int,
    ->      primary key (oid),
    ->      constraint FK_person foreign key (pid) references person(pid)
    -> );
    
#외래키 생성(제약조건 없음)
mysql>create table job
    -> (
    ->     jid int not null,
    ->     name varchar(16),
    ->     pid int,
    ->     primary key (jid),
    ->     foreign key (pid) references person (pid)
    -> );
    
#외래키 삭제
mysql>alter table orders
	-> drop foriegn key FK_person;
    
#외래키 다시 설정
mysql> alter table orders
    -> add foreign key (pid) references person (pid);

0개의 댓글