로우 (데이터베이스)

어떤 테이블의 단일 구조 데이터 항목

로우(row, 행, 行)는 관계형 데이터베이스에서 레코드(record) 또는 튜플(tuple)로 불리기도 하며, 어떤 테이블에서 단일 구조 데이터 항목을 가리킨다. 간단한 용어로, 데이터베이스 테이블은 로우와 컬럼 또는 필드로 구성되어 있다고 간주할 수 있다.[1] 각 테이블의 행은 일련의 관련 자료를 나타내며, 테이블에서 모든 로우는 동일한 구조를 가지고 있다.

개요 편집

예를 들어, 회사를 나타내는 한 테이블 안에서 각 행은 하나의 회사를 나타낸다. 컬럼은 회사명, 회사 주소 등등의 것들을 나타낼 것이다. 부서 정보를 가진 사원의 조합을 나타내는 테이블에는 각 행에 1명의 사원이 1개의 부서와 연관되어 있을 것이다.

공식적으로 덜 이용되는 공식적으로 관계가 있지 않은 데이터베이스에서 레코드는 상기한 바와 같이 레코드와 같지만, 행으로 언급되지는 않는다.

행의 명백한 구조와 행에서의 데이터 값의 의미는 행의 연속적인 데이터 값과 테이블에서의 각 컬럼 중에 하나를 제공해야 하는 것으로 이해가 된다. 그러면 행은 각 튜플이 2개의 항목(적절한 컬럼명과 이 행이 컬럼에 제공하는 값)을 가지는 튜플의 세트로 구성된 관계변수로서 해석이 된다.

각 컬럼은 특정한 타입의 자료형을 가진 데이터 값을 기대한다. 예를 들어, 하나의 컬럼은 유니크한 식별자를 필요로 할 것이고, 다른 것은 그 사람의 이름을 가진 텍스트를, 그리고 시급을 나타내는 센트 단위의 급여(정수)를 필요로 할 것이다.

- 컬럼1 컬럼2
Row 1 Row 1, Column 1 Row 1, Column 2
Row 2 Row 2, Column 1 Row 2, Column 2
Row 3 Row 3, Column 1 Row 3, Column 2

예제 편집

여러 개의 속성으로 구성되는 하나의 튜플 형식의 예를 나타낸다.

3개의 속성으로 구성된 튜플 형식의 예
속성명 : 정의역
ID : integer
이름 : text
주소 : text

이 형식의 실제 쌍의 예를 나타낸다. 이 예제에서는 편의상 쌍을 시각적 그림에서 보여주고 있다.

3개의 속성으로 구성된 실제 쌍의 예
ID : integer 이름 : varchar 주소 : varchar
101 "홍길동" "경기도 양주시"

이 예제 쌍은 ID라는 속성 이름으로 정수 101라는 속성 값을 갖는 속성과 이름이라는 속성 이름으로 문자열의 "홍길동"이라는 속성 값을 갖는 속성과 주소라는 속성 이름인 문자열의 "경기도 양주시"라는 속성 값을 갖는 속성의 세 가지 특성으로 구성되어 있다. 이 예제 쌍의 차수는 3이다. 앞서 언급했듯이, 쌍을 구성하는 속성은 정렬되지 않는다. 즉,이 예제의 조로 "이름 오른쪽에 주소가 있다"고 언급하는 것은 틀린 것이며, "주소는 세 번째 특성이다"라고 말하는 것도 잘못이다.

특징 편집

  • SQL에서 레코드는 행(row)라고 불린다.
  • 속성은 속성명과 정의영역(도메인)의 이름 쌍이다.
  • 정의영역(domain)은 데이터 형식과 같은 의미로 사용된다.
  • 속성은 그 정의영역에 적용되는 하위 속성값을 가진다.
  • 한 쌍 있어서는 그 세트에 포함되는 속성 각각 그 속성 정의 영역의 속성 값을 가진다.
  • 속성 값은 스칼라 값 이나 더 복잡한 구조를 가지는 값이다.
  • 수학의 쌍과 달리 관계 모델의 쌍을 구성하는 속성은 정렬되지 않는다.
  • 쌍을 구성하는 속성의 수를 차수(degree)라고 한다.
  • 쌍 차수는 0 또는 양의 정수이다.
  • 차수가 n인 쌍을 n쌍(n -tuple)이라고 한다.
  • 관계값 (또는 단순히 관계)는 0 이상 동일한 형식 쌍의 집합으로 구성된다.

같이 보기 편집

각주 편집

  1. "What is a database row?" Cory Janssen, Techopedia, retrieved 27 June 2014