필드 (데이터베이스) 편집하기

이동: 둘러보기, 검색

경고: 로그인하지 않았습니다. 편집을 하면 IP 주소가 공개되게 됩니다. 로그인하거나 계정을 생성하면 편집자가 아이디(ID)으로 기록되고, 다른 장점도 있습니다.

편집을 되돌릴 수 있습니다. 이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 저장해주세요.
최신판 당신의 편집
8번째 줄: 8번째 줄:
  
 
==기능==
 
==기능==
필드의 삽입, 삭제, 수정은 모두 ALTER문으로 이뤄진다. 밑의 기능 설명은 MYSQL을 기준으로 작성되었는데, ORACLE 등 DBMS마다 명령어가 조금씩 다르기 때문에 이에 유의해서 사용해야한다.
+
* 필드 삽입 - ALTER
 
 
* 필드 삽입
 
 
  > ALTER TABLE [테이블명] ADD [삽입할 필드명][삽입할 필드 타입][옵션]; <ref name="MC빼인트와 함께">〈[https://mcpaint.tistory.com/194 [MYSQL]테이블 생성, 컬럼추가, 삭제, 수정]〉, 《개인사이트》, 2012-06-28 </ref>
 
  > ALTER TABLE [테이블명] ADD [삽입할 필드명][삽입할 필드 타입][옵션]; <ref name="MC빼인트와 함께">〈[https://mcpaint.tistory.com/194 [MYSQL]테이블 생성, 컬럼추가, 삭제, 수정]〉, 《개인사이트》, 2012-06-28 </ref>
 
필드를 삽입하는 ALTER문에선 삽입될 필드의 타입과 몇가지 옵션들을 통해 삽입될 필드의 기본 기능들을 설정할 수 있다. 해당되는 옵션으로는 첫째, 디폴트값을 설정할 수 있다. 옵션 자리에 'DEFAULT 0'을 넣어주면 삽입될 필드의 디폴트 값은 0으로 설정된다. 두번째, NULL의 여부를 설정할 수 있다. 옵션 자리에 'NOT NULL DEFAULT 0'을 넣어주면 삽입될 필드은 NULL 값을 허용하지 않고, 디폴트값은 0으로 설정된다. <ref name="바오">〈[http://blog.naver.com/PostView.nhn?blogId=pcgun70&logNo=220726410200 MYSQL 필드 추가, 수정, 삭제 - add, rename, drop, change, modify]〉, 《개인블로그》, 2016-06-03 </ref> 세번째, 삽입될 필드의 위치를 설정할 수 있다. 옵션 자리에 'NOT NULL DEFAULT 0 AFTER [기존 테이블에 있던 필드명]'을 넣어주면 삽입될 필드은 NULL 값을 허용하지않고, 디폴트값은 0으로 설정되며 기존 테이블에 있던 필드명 뒤의 위치로 삽입된다. 'NOT NULL DEFAULT 0 FIRST'를 넣어주게 되면, 삽입되는 필드의 위치는 기존 테이블의 맨 앞이 된다. <ref name="개발자가 되기위한 첫 걸음">〈[https://juyoung-1008.tistory.com/17 MYSQL 컬럼명 변경, 컬럼 타입 변경, 컬럼 추가, 컬럼 삭제]〉, 《개인사이트》, 2018-12-14 </ref>
 
필드를 삽입하는 ALTER문에선 삽입될 필드의 타입과 몇가지 옵션들을 통해 삽입될 필드의 기본 기능들을 설정할 수 있다. 해당되는 옵션으로는 첫째, 디폴트값을 설정할 수 있다. 옵션 자리에 'DEFAULT 0'을 넣어주면 삽입될 필드의 디폴트 값은 0으로 설정된다. 두번째, NULL의 여부를 설정할 수 있다. 옵션 자리에 'NOT NULL DEFAULT 0'을 넣어주면 삽입될 필드은 NULL 값을 허용하지 않고, 디폴트값은 0으로 설정된다. <ref name="바오">〈[http://blog.naver.com/PostView.nhn?blogId=pcgun70&logNo=220726410200 MYSQL 필드 추가, 수정, 삭제 - add, rename, drop, change, modify]〉, 《개인블로그》, 2016-06-03 </ref> 세번째, 삽입될 필드의 위치를 설정할 수 있다. 옵션 자리에 'NOT NULL DEFAULT 0 AFTER [기존 테이블에 있던 필드명]'을 넣어주면 삽입될 필드은 NULL 값을 허용하지않고, 디폴트값은 0으로 설정되며 기존 테이블에 있던 필드명 뒤의 위치로 삽입된다. 'NOT NULL DEFAULT 0 FIRST'를 넣어주게 되면, 삽입되는 필드의 위치는 기존 테이블의 맨 앞이 된다. <ref name="개발자가 되기위한 첫 걸음">〈[https://juyoung-1008.tistory.com/17 MYSQL 컬럼명 변경, 컬럼 타입 변경, 컬럼 추가, 컬럼 삭제]〉, 《개인사이트》, 2018-12-14 </ref>
 
각 옵션들의 종류는 몇가지 있지만, 대표적인 것들을 예시로 설명하였다. 또한 삽입한 필드의 길이 제한은 삽입할 필드 타입명 옆에 '(길이)'로 설정할 수 있다. 예를들면 'INT(10)'로 설정하면 삽입한 필드는 int형에 길이는 10으로 제한된다는 의미이다.
 
각 옵션들의 종류는 몇가지 있지만, 대표적인 것들을 예시로 설명하였다. 또한 삽입한 필드의 길이 제한은 삽입할 필드 타입명 옆에 '(길이)'로 설정할 수 있다. 예를들면 'INT(10)'로 설정하면 삽입한 필드는 int형에 길이는 10으로 제한된다는 의미이다.
  
* 필드 삭제
+
* 필드 삭제 - ALTER
 
1) 필드 삭제
 
1) 필드 삭제
 
  > ALTER TABLE [테이블명] DROP [삭제할 필드명]; <ref name="ZETAWIKI(1)">〈[https://zetawiki.com/wiki/MySQL_%ED%85%8C%EC%9D%B4%EB%B8%94_%EC%BB%AC%EB%9F%BC_%EC%82%AD%EC%A0%9C MySQL 테이블 컬럼 삭제]〉, 《ZETAWIKI》, 2020-02-27</ref>
 
  > ALTER TABLE [테이블명] DROP [삭제할 필드명]; <ref name="ZETAWIKI(1)">〈[https://zetawiki.com/wiki/MySQL_%ED%85%8C%EC%9D%B4%EB%B8%94_%EC%BB%AC%EB%9F%BC_%EC%82%AD%EC%A0%9C MySQL 테이블 컬럼 삭제]〉, 《ZETAWIKI》, 2020-02-27</ref>
24번째 줄: 22번째 줄:
 
ALTER문을 이용하여 지정한 필드의 디폴트값을 삭제할 수 있다. <ref name="TCPSCHOOL.com">〈[http://tcpschool.com/mysql/mysql_constraint_default DEFAULT]〉, 《TCPSCHOOL.com》</ref>
 
ALTER문을 이용하여 지정한 필드의 디폴트값을 삭제할 수 있다. <ref name="TCPSCHOOL.com">〈[http://tcpschool.com/mysql/mysql_constraint_default DEFAULT]〉, 《TCPSCHOOL.com》</ref>
  
* 필드 수정 <ref name="개발자언니네">〈[https://m.blog.naver.com/PostView.nhn?blogId=luvtoma&logNo=221148925495&proxyReferer=https:%2F%2Fwww.google.com%2F MySQL 컬럼명 변경, 컬럼 타입 변경, 컬럼 추가, 컬럼 삭제]〉, 《개인블로그》, 2017-11-26</ref>
+
* 필드 수정 - ALTER <ref name="개발자언니네">〈[https://m.blog.naver.com/PostView.nhn?blogId=luvtoma&logNo=221148925495&proxyReferer=https:%2F%2Fwww.google.com%2F MySQL 컬럼명 변경, 컬럼 타입 변경, 컬럼 추가, 컬럼 삭제]〉, 《개인블로그》, 2017-11-26</ref>
 
1) 필드명 수정
 
1) 필드명 수정
 
  > ALTER TABLE [테이블명] CHANGE [변경할 필드명][새로운 필드명][타입];
 
  > ALTER TABLE [테이블명] CHANGE [변경할 필드명][새로운 필드명][타입];
35번째 줄: 33번째 줄:
  
 
3) 필드 디폴트값 수정
 
3) 필드 디폴트값 수정
  > ALTER TABLE [테이블명] ALTER (COLUMN) [디폴트값을 수정할 필드명] SET DEFAULT [디폴트값]; <ref name="두번째 뇌">〈[https://devhoma.tistory.com/62 [SQL]테이블의 컬럼 수정하기]〉, 《개인사이트》, 2015-12-30</ref>
+
  > ALTER
필드의 디폴트값을 수정하는 ALTER문은 필드의 디폴트값을 바꿀 수 있다.
 
 
 
4) 필드 타입 수정
 
> ALTER TABLE [테이블명] MODIFY [타입을 변경할 필드명][변경할 타입];
 
필드의 타입을 수정하는 ALTER문은 필드를 굳이 삭제하지않고, 필드의 타입을 변경할 수 있다. <ref name="타우리TV_개인유투버">〈[https://blog.naver.com/toys999/140194530204 [MySQL]컬럼 추가 및 삭제, 변경 쿼리]〉, 《개인블로그》, 2013-08-04</ref>
 
 
 
(※위의 SQL문은 MYSQL을 기준으로 작성하였습니다.)
 
  
 
===예시===
 
===예시===
[[파일:필드(field)_예시.PNG|600픽셀|섬네일|가운데|필드(field)] 예시]]
+
[[파일:레코드_예시.PNG|600픽셀|섬네일|가운데|필드(field)] 예시]]
  
 
필드(field)는 위의 그림과 같이 [[테이블]](table)에서 각 열을 의미한다. 필드는 열(colum) 또는 속성(attribute)이라고도 부르며, 각 필드가 가진 [[레코드]](record)의 수는 모두 같다. 위의 그림은 필드가 5, 레코드가 3인 테이블이다.
 
필드(field)는 위의 그림과 같이 [[테이블]](table)에서 각 열을 의미한다. 필드는 열(colum) 또는 속성(attribute)이라고도 부르며, 각 필드가 가진 [[레코드]](record)의 수는 모두 같다. 위의 그림은 필드가 5, 레코드가 3인 테이블이다.

해시넷에서의 모든 기여는 다른 기여자가 편집, 수정, 삭제할 수 있다는 점을 유의해 주세요. 만약 여기에 동의하지 않는다면, 문서를 저장하지 말아 주세요.
또한, 직접 작성했거나 퍼블릭 도메인과 같은 자유 문서에서 가져왔다는 것을 보증해야 합니다 (자세한 사항은 해시넷:저작권 문서를 보세요). 저작권이 있는 내용을 허가 없이 저장하지 마세요!

취소 | 편집 도움말 (새 창에서 열림)