검수요청.png검수요청.png

필드 (데이터베이스)

위키원
(DB필드에서 넘어옴)
이동: 둘러보기, 검색

필드(field)란 데이터베이스에서 세로 방향으로 표시한 컬럼(Column)을 말한다. (列)이라고도 한다. 필드는 DB Table에서 가로로 표시한 레코드 (Record)에 대한 개별적인 속성값을 표시한다. DB 필드라고도 한다. 반대말은 레코드(record)이다.

레코드(record)

특징[편집]

필드(field)는 SQL에서 열(column) 또는 속성(attribute)이라고 불린다.

기능[편집]

필드의 삽입, 삭제, 수정은 모두 ALTER문으로 이뤄진다. 밑의 기능 설명은 MYSQL을 기준으로 작성되었는데, ORACLE 등 DBMS마다 명령어가 조금씩 다르기 때문에 이에 유의해서 사용해야한다.

  • 필드 삽입
> ALTER TABLE [테이블명] ADD [삽입할 필드명][삽입할 필드 타입][옵션]; [1]

필드를 삽입하는 ALTER문에선 삽입될 필드의 타입과 몇가지 옵션들을 통해 삽입될 필드의 기본 기능들을 설정할 수 있다. 해당되는 옵션으로는 첫째, 디폴트값을 설정할 수 있다. 옵션 자리에 'DEFAULT 0'을 넣어주면 삽입될 필드의 디폴트 값은 0으로 설정된다. 두번째, NULL의 여부를 설정할 수 있다. 옵션 자리에 'NOT NULL DEFAULT 0'을 넣어주면 삽입될 필드은 NULL 값을 허용하지 않고, 디폴트값은 0으로 설정된다. [2] 세번째, 삽입될 필드의 위치를 설정할 수 있다. 옵션 자리에 'NOT NULL DEFAULT 0 AFTER [기존 테이블에 있던 필드명]'을 넣어주면 삽입될 필드은 NULL 값을 허용하지않고, 디폴트값은 0으로 설정되며 기존 테이블에 있던 필드명 뒤의 위치로 삽입된다. 'NOT NULL DEFAULT 0 FIRST'를 넣어주게 되면, 삽입되는 필드의 위치는 기존 테이블의 맨 앞이 된다. [3] 각 옵션들의 종류는 몇가지 있지만, 대표적인 것들을 예시로 설명하였다. 또한 삽입한 필드의 길이 제한은 삽입할 필드 타입명 옆에 '(길이)'로 설정할 수 있다. 예를들면 'INT(10)'로 설정하면 삽입한 필드는 int형에 길이는 10으로 제한된다는 의미이다.

  • 필드 삭제

1) 필드 삭제

> ALTER TABLE [테이블명] DROP [삭제할 필드명]; [4]

필드를 삭제하는 ALTER문에선 DROP문을 이용하여 특정 필드를 지정해줘야한다. 필드를 삭제할 경우 해당 필드 안에 들어있는 데이터값들 또한 모두 삭제되기 때문에 주의해서 사용해야한다. 또한 삭제 기능은 데이터베이스를 따로 백업해두지않은 이상 복원할 수 없기 때문에 사용시 신중해야한다. [5]

2) 필드 디폴트값 삭제

> ALTER TABLE [테이블명] ALTER [필드명] DROP DEFAULT;

ALTER문을 이용하여 지정한 필드의 디폴트값을 삭제할 수 있다. [6]

  • 필드 수정 [7]

1) 필드명 수정

> ALTER TABLE [테이블명] CHANGE [변경할 필드명][새로운 필드명][타입];

필드명을 수정하는 ALTER문은 기존 테이블에 존재하는 필드의 이름을 바꿀 수 있다. 필드명을 변경하면서 타입 또한 변경이 가능하다. 타입 변경시 타입명 옆에 '(길이)'로 필드의 길이를 제한할 수 있다. 예를들면 'INT(10)'로 설정하면 변경한 필드는 int형에 길이는 10으로 제한된다는 의미이다. [1]

2) 필드 순서 수정

> ALTER TABLE [테이블명] MODIFY (COLUMN) [순서 변경할 필드명] [타입] AFTER [순서 변경할 필드 앞에 오는 필드명];
> ALTER TABLE [테이블명] MODIFY (COLUMN) [순서 변경할 필드명] [타입] FIRST;

필드 순서를 수정하는 ALTER문은 테이블에 존재하는 필드들의 순서를 바꿀 수 있다. 옵션이 AFTER일 경우 지정한 필드 뒤에 해당 필드가 오게 수정하는 것이고, FIRST일 경우 테이블의 필드 중 맨 앞에 오게 수정하는 것이다. [8]

3) 필드 디폴트값 수정

> ALTER TABLE [테이블명] ALTER (COLUMN) [디폴트값을 수정할 필드명] SET DEFAULT [디폴트값]; [9]

필드의 디폴트값을 수정하는 ALTER문은 필드의 디폴트값을 바꿀 수 있다.

4) 필드 타입 수정

> ALTER TABLE [테이블명] MODIFY [타입을 변경할 필드명][변경할 타입];

필드의 타입을 수정하는 ALTER문은 필드를 굳이 삭제하지않고, 필드의 타입을 변경할 수 있다. [10]

(※위의 SQL문은 MYSQL을 기준으로 작성하였습니다.)

예시[편집]

필드(field)] 예시

필드(field)는 위의 그림과 같이 테이블(table)에서 각 열을 의미한다. 필드는 열(colum) 또는 속성(attribute)이라고도 부르며, 각 필드가 가진 레코드(record)의 수는 모두 같다. 위의 그림은 필드가 5, 레코드가 3인 테이블이다.

각주[편집]

  1. 1.0 1.1 [MYSQL테이블 생성, 컬럼추가, 삭제, 수정]〉, 《개인사이트》, 2012-06-28
  2. MYSQL 필드 추가, 수정, 삭제 - add, rename, drop, change, modify〉, 《개인블로그》, 2016-06-03
  3. MYSQL 컬럼명 변경, 컬럼 타입 변경, 컬럼 추가, 컬럼 삭제〉, 《개인사이트》, 2018-12-14
  4. MySQL 테이블 컬럼 삭제〉, 《ZETAWIKI》, 2020-02-27
  5. 레코드 변경 및 삭제하기〉, 《everdevel(Brand New Day)》
  6. DEFAULT〉, 《TCPSCHOOL.com》
  7. MySQL 컬럼명 변경, 컬럼 타입 변경, 컬럼 추가, 컬럼 삭제〉, 《개인블로그》, 2017-11-26
  8. MySQL 테이블 컬럼 순서 바꾸기〉, 《ZETAWIKI》, 2020-02-27
  9. [SQL테이블의 컬럼 수정하기]〉, 《개인사이트》, 2015-12-30
  10. [MySQL컬럼 추가 및 삭제, 변경 쿼리]〉, 《개인블로그》, 2013-08-04

참고자료[편집]

같이 보기[편집]


  검수요청.png검수요청.png 이 필드 (데이터베이스) 문서는 데이터에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.