레코드 편집하기

이동: 둘러보기, 검색

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

편집을 되돌릴 수 있습니다. 이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 저장해주세요.
최신판 당신의 편집
1번째 줄: 1번째 줄:
'''레코드'''(record)란 [[데이터베이스]]에서 하나의 단위로 취급되는 자료의 집합을 말한다. 하나의 레코드는 [[디비 테이블]](DB table)에서 가로 방향으로 한 줄로 나타낸다. '''줄''', '''행'''(行, row) 또는 '''튜플'''(tuple)이라고도 한다. '''데이터베이스 레코드'''(database record) 또는 간략히 '''디비 레코드'''(DB record)라고도 한다. 데이터베이스에서 한 건의 자료를 구성하는 레코드를 [[엔티티]](entity)라고 한다. 각각의 레코드를 다른 레코드와 구별하기 위해 [[키]](key) 값을 사용한다. 레코드의 반대말은 [[필드 (데이터베이스)|필드]](Field)이다.
+
'''레코드'''(record)란 [[데이터베이스]]에서 하나의 단위로 취급되는 자료의 집합을 말한다. 하나의 레코드는 [[디비 테이블]](DB table)에서 가로 방향으로 한 줄로 나타낸다. '''줄''', '''행'''(行) 또는 ''''''(Row)라고도 한다. '''데이터베이스 레코드'''(database record) 또는 간략히 '''디비 레코드'''(DB record)라고도 한다. 데이터베이스에서 한 건의 자료를 구성하는 레코드를 [[엔티티]](entity)라고 한다. 각각의 레코드를 다른 레코드와 구별하기 위해 [[키]](key) 값을 사용한다. 레코드의 반대말은 [[필드]](Field)이다.
 
 
[[파일:테이블_설명.png|600픽셀|섬네일|가운데|레코드(record)]]
 
 
 
==특징==
 
레코드(record)는 SQL에서 행(row) 또는 튜플(tuple)이라고 불린다.
 
 
 
===기능===
 
* 레코드 삽입 - INSERT
 
> INSERT INTO [테이블명] (컬럼명1, 컬럼명2 ...)
 
              VALUES (삽입할 데이터값1, 삽입할 데이터값2...);
 
레코드를 삽입하는 INSERT문에서 중요한 부분은 컬럼명의 개수와 데이터값의 개수가 일치해한다. 또한 각 컬럼에 지정된 데이터 타입과 데이터값의 타입이 일치해야하며, 컬럼의 순서와 삽입할 데이터값의 순서도 일치해야한다. 만약 특정 컬럼의 데이터값을 NULL 혹은 비워두고싶다면, 데이터값을 NULL로 지정해주거나 INSERT문에서 특정컬럼명을 제외하고 작성해주면 된다.  <ref name="無所有">〈[https://m.blog.naver.com/PostView.nhn?blogId=killmewild&logNo=30098675841&proxyReferer=https:%2F%2Fwww.google.com%2F [MYSQL]레코드 삽입(추가), 검색(조회)]〉, 《개인블로그》, 2010-12-12</ref>
 
 
 
* 레코드 삭제 - DELETE
 
> DELETE FROM [테이블명] WHERE [조건];
 
레코드를 삭제하는 DELETE문에선 WHRER문을 이용하여 특정 레코드를 지정해줘야한다. 조건을 지정하지않으면 해당 테이블에 있는 모든 레코드가 삭제되기 때문에 주의해서 사용해야한다. 또한 삭제 기능은 데이터베이스를 따로 백업해두지않은 이상 복원할 수 없기 때문에 사용시 신중해야한다. <ref name="無所有"></ref> <ref name="everdevel">〈[https://www.everdevel.com/MySQL/record-md/ 레코드 변경 및 삭제하기]〉, 《everdevel(Brand New Day)》</ref>
 
 
 
* 레코드 수정 - UPDATE
 
> UPDATE [테이블명] SET [컬럼명] = [변경할 데이터값1], ... WHERE [조건];
 
레코드를 수정하는 UPDATE문은 단일 레코드만 변경할 시 WHERE문을 이용하여 특정 레코드를 지정하여 사용하면 되고, 전체 수정시엔 WHERE문을 사용하지않고 변경할 컬럼과 데이터값만 지정하여 사용하면 된다. 수정 기능 또한 삭제 기능과 같이 변경시 복원할 수 없기 때문에 사용시 신중해야한다. <ref name="無所有"></ref> <ref name="everdevel"></ref>
 
 
 
* 레코드 조회 - SELECT
 
> SELECT [DISTINCT] [컬럼명1,...]
 
        FROM [테이블명1,...]
 
        WHERE [조건]
 
        GROUP BY [컬럼명1,...]
 
        HAVING [조건]
 
        ORDER BY [컬럼명1] ASC/DESC, [컬럼명2] ASC/DESC;
 
레코드를 조회하는 SELECT문은 여러 조건들을 이용하여 원하는 내용만 조회할 수 있다. 해당 테이블의 전체 내용을 조회할 땐, 컬럼명을 '*'으로 지정해주면 된다. DISTINCT는 중복되는 내용을 제거하고 출력해주는 조건이다. GROUP BV는 컬럼들을 그룹으로 묶으서 사용하는 조건으로 컬럼별 개수를 파악할 수 있고, HAVING은 GROUP BY 사용시 조건을 지정할 수 있다.  <ref name="심심할때 쓰는 블로그">〈[https://eongeuni.tistory.com/21 [mysql]데이터 조회(select문)]〉, 《개인블로그》, 2016-02-09</ref> <ref name="확장형 뇌 저장소">〈[https://extbrain.tistory.com/56 그룹화하여 데이터 조회(GROUP BY)]〉, 《개인블로그》, 2018-01-10</ref> ORDER BY는 지정된 컬럼을 기준으로 레코드를 정렬하는 조건으로써 ASC는 오름차순으로, DESC는 내림차순으로 정렬해준다. <ref name="초보몽키의 개발공부로그">〈[https://wayhome25.github.io/mysql/2017/03/21/mysql-08-table-order/ MYSQL - Table(조회3 정렬 order by)]〉, 《개인블로그》, 2017-03-21</ref>
 
 
 
(※위의 SQL문은 MYSQL을 기준으로 작성하였습니다.)
 
 
 
===예시===
 
[[파일:레코드_예시.PNG|600픽셀|섬네일|가운데|레코드(record)] 예시]]
 
 
 
레코드(record)는 위의 그림과 같이 [[테이블]](table)에서 각 행을 의미한다. 레코드는 행(row) 또는 튜플(tuple)이라고도 부르며, 각 레코드가 가진 [[필드]](field)의 수는 모두 같다. 위의 그림은 레코드가 3, 필드가 5인 테이블이다.
 
 
 
{{각주}}
 
 
 
==참고자료==
 
* TCPSCHOOL.com, 〈[http://tcpschool.com/mysql/mysql_intro_relationalDB 관계형 데이터베이스]〉, 《TCPSCHOOL.com》
 
  
 
== 같이 보기 ==
 
== 같이 보기 ==
 
* [[데이터베이스]]
 
* [[데이터베이스]]
* [[테이블]]
+
* [[엔티티]](entity)
* [[릴레이션]]
+
* [[필드]](field)
* [[엔티티]]
+
* [[]](key)
* [[필드 (데이터베이스)|필드]]
+
 
* [[키]]
+
{{프로그래밍|토막글}}
  
{{데이터|검토 필요}}
+
[[분류:데이터베이스]]

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

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