테이블

by 김현석

테이블: 테이블은 데이터를 저장하고 관리하는 것으로, 다른 개체의 원본 데이터가 된다.

쿼리: 하나 또는 두개 이상의 테이블에서 사용자가 원하는 데이터를 추출, 검색 및 내용을 견경하는 개체이다.

폼: 테이블이나 쿼리를 원본으로 해서 입,출력 화면을 작성하는 개체이다.

보고서: 테이블이나 쿼리를 원본으로 해서 데이터의 출력을 위한 개체이다.

매크로:액세스의 작업을 자동화하는 개체이다.


1. 테이블 만들기

- 각 필드와 입력될 데이터의 형식 및 특성을 지정할 수 있다.

- 디자인 보기, 데이터시트 보기, 테이블 가져오기, 테이블 연결 등을 이용하여 작성할 수 있다.

1-1 데이터시트 보기

- 새로운 레코드는 항상 테이블의 마지막 행에서만 추가되며, 중간에 삽입할 수 없다.

- 레코드를 삭제하면 영구적으로 삭제된다.

2-1 디자인 보기

- 테이블을 구성하는 필드를 추가, 제거, 수정할 수 있다.

- 각 필드의 순서를 변경할 수 있고 데이터 형식, 필드 속성을 지정하거나 변경 할 수 있다.


2. 데이터 형식

- 짧은 텍스트: 문자 또는 문자와 숫자가 혼합된 데이터를 입력할 수 있는 형식(숫자도 가능)

: 최대 255자까지 저장 가능

- 긴 텍스트: 짧은 텍스트와 비슷하지만, 최대 64,000까지 입력할 수 있는 형식

- 숫자: 각종 숫자를 입력할 수 있는 형태로, 바이트- 정수-정수-실수- 실수 중 선택할 수 있다. (기본적으로 정수(long)이 입력)

: 필드 크기를 설정하여 숫자 값의 크기를 제어할 수 있다.

- 통화: 화폐를 표시하는 숫자 데이터 형식으로 기본적으로 통화값을 나타내는 기호가 붙는다

: 기본 필드 크기는 8바이트

- 날짜/시간: 100년에서 999년까지의 날짜와 시간을 저장할 수 있는 형식

: 기본 필드 크기는 8바이트

- 일련번호: 새로운 레코드가 추가될 때마다 자동으로 번호를 하나씩 증가시켜주는 형식

: 기본 필드 크기는 4바이트

: 한번 생성된 일련번호는 다시 생성되지 않고, 수정이 불가하다.(삭제는 가능)

: 일련 번호 형식의 필드 크기는 변경할 수 있다.

- yes/no: Ture/false, yes/no, on/off 등 둘 중 하나만 입력하는 경우에 사용하는 형식

: 기본 필드 크기는 1비트 (하나의 필드에 할당되는 크기가 가장 작음)

- OLE개체: 다른 프로그램(word, excel 등)에서 만들어진 개체를 연결하거나 포함하는 형식

: 기본 필드 크기는 1GB

- 하이퍼링크: 웹 사이트나 파일의 특정 위치로 바로 이동하는 주소 데이터를 입력할 수 있다.


<데이터 형식에 따른 필드 크기>

통화: 8Byte

날짜/시간: Byte

일련번호: 4Byte

yes/no: 1Bit

OLE 개체: 1GB

(8bit=1byte)



3. 필드속성

1. 입력 마스크

- 사용자가 데이터를 신속하고 정확하게 입력할 수 있도록 입력되는 데이터 형식에 적합하게 입력 틀을 만들어주는 속성

- 입력 마스크의 사용자 지정형식

마스크 형식; 서식 기호 저장유무; 마스크 표시 문자

서식 기호 저장 유무: 0 입력시 서식기호 전부 입력, 1 입력시 입력 값만 저장


* 사용자 서식 기호 기호설명 필수/선택

0 0~9까지 숫자 입력 가능, 공백 더하기 빼기 기호 입력 X 필수

9 숫자 공백 입력 가능, 더하기 뺴기 기호 입력 X 선택

# 숫자, 공백 입력 가능, 더하기 빼기 기호 입력 가능 선택

L 영문자, 한글만 입력 가능 필수

? 영문자 한글만 입력 가능 선택

A 영문자 한글 숫자만 입력가능 필수

a 영문자 한글 숫자만 입력 가능 선택

& 모든 문자와 공백 입력 가능 필수

C 모든 문자와 공백 입력 가능 선택

> 모든 문자를 대문자로 변환하여 입력

< 모든 문자를 소문자로 변환하여 입력


숫자: 0,9,#

한글, 영문자: L,?

한글, 영문자, 숫자: A,a

모든 문자, 공백: &,C

필수:0,L,A,&


2. 유효성 검사 규칙

- 필드에 입력할 데이터 값을 제한하여 잘못된 데이터의 입력을 방지하기 위한 속성

0이 아닌 값을 입력: <>0

0 또는 1000 이상의 값을 입력: 0 or >=1000

김으로 시작하는 데이터만 입력: Like"김*"

@문자가 포함된 데이터만 입력: Like"*@*"

최로 시작하는 3개의 문자 데이터만 입력: Like"최??"


* 유효성 검사 텍스트: 입력한 데이터가 유효성 검사 규칙에 어긋날 경우 표시할 오류 메시지 설정


3. 인덱스

- 인덱스 속성: 아니요/예(중복가능) / 예(중복 불가능)

- 인덱스를 설정하면 레코드의 검색과 정렬 속도는 향상된다.

--> 인덱스를 설정하면 레코드의 추가, 수정 시에는 속도가 느려진다.

- OLE 개체 필드에는 인덱스를 설정할 수 없다.

- 필드에 기본 키로 지정하면 해당 필드에 인덱스(중복 불가능)가 설정된다.

- 여러 개의 필드에 설정할 수 있다.


4. 기타속성

캡션:[데이터 시트보기] 상태에서 필드 이름 대신 표시될 새로운 이름을 지정하는 속성

기본 값: 새로운 레코드가 만들어질 때 필드에 자동으로 입력되는 값을 지정하는 속성

필수: 필드에 반드시 값이 입력되어야 할지의 여부를 지정하는 속성

빈문자열 허용: 필드에 빈문자열 허용 여부를 지정

IME 모드: 데이터 입력 시 한글, 영문자 등의 입력 상태를 지정하는 속성(처음에 입력할 때의 입력모드 지정)

: 폼의 각 컨트롤에 포커스가 위치할 때 입력모드를 '한글' 또는 '영숫자 반자'로 각각 지정하고자 할 때 사용


5. 조회

- 사용자가 값을 직접 입력하는 것이 아니라 콤보 상자나 목록 상자를 통해 값을 선택하도록 하며, 정확하게 입력할 수 있도록 하는 속성이다.


컨트롤 표시 조회 속성을 설정하려면 콤보 상자나 목록 상자를 선택해야 한다.

행 원본 유형 목록의 행 원본 유형을 지정한다. -> 테이블/쿼리: 테이블이나 쿼리에서 가져온 데이터를 원본으로 사용(다른 테이블이나 쿼리에 있는 값을 조회하도록 설정하는 것)

-> 값 목록: 직접 입력한 값을 원본으로 사용

-> 필드 목록: 테이블이나 쿼리에 있는 필드 이름을 원본으로 사용


행 원본 행 원본 유형에서 선택한 것에 따라 달라지며, 행 원본으로 사용할 데이터를 지정한다.

바운드 열 선택한 여러 개의 필드(열) 중에서 해당 컨트롤에 저장되는 필드(열)을 지정한다

열 개수 표시되는 열의 개수를 지정한다.

열 이름 목록에 열 이름의 표시 여부를 지정한다

열 너비 열의 너비를 지정하고, 열이 여러개일 경우 세미콜론으로 구분한다.

너비 가 0이면 해당 열은 표시되지 않는다

행 수 행의 개수를 지정한다

목록 너비 목록의 전체 너비를 지정한다

목록 값만 허용 목록 값 이외의 데이터 입력 가능 여부를 지정한다

여러 값 허용 여러 값을 선택할 수 있는지의 여부를 지정한다

값 목록 편집 허용 지정한 값 목록의 편집 가능 여부를 지정한다


* 조회 목록으로 표시할 열 개수는 변경 가능


4. 키의 종류

1. 후보 키

- 기본 키를 지정할 수 있는 속성들의 집합

- 유일성과 최소성을 만족해야한다.

2. 기본 키

- 모든 레코드를 고유하게 식별할 수 있는 키(후보 키 중에서 선택)

- 기본 키 필드에는 중복 값이 없어야하고, Null값이 없어야한다.

- 관계 설정된 테이블에서 기본 키를 해제할 수 없다.

--> 기본 키를 해제하려면 설정된 관계를 먼저 삭제해야한다.

- 모든 테이블에는 기본 키를 반드시 설정할 필요 없음

- 데이터가 이미 입력된 필드도 기본 키로 지정할 수 있음

- OLE 개체에는 기본 키를 지정할 수 없음

- 기본키는 테이블의 [디자인보기] 상태에서 설정할 수 있다.

- 기본 키로 설정된 필드에는 항상 고유한 값이 입력 되도록 자동으로 확인된다 -> 중복 X

- 기본 키 필드에 값이 입력되지 않으면 레코드가 저장되지 않는다.

- 기본 키는 여러 필드에 설정 가능


3. 외래키

관계를 맺고 있는 테이블에서 참조하는데 사용되는 필드

중복된 레코드가 존재할 수 있고, Null값이 있을 수 있다.


5. 관계 설정

1. 관계종류

1:1 두 테이블 간의 레코드가 일대일로 대응되는 관계

1:N 가장 보편적인 형태로써, 기본 테이블의 한 개체가 상대 테이블의 여러 개체와 대응하는 관계

N:M 두 테이블 간의 여러 레코드가 다대다로 대응하는 관계


2. 관계편집

항상 참조 무결성 유지

- 두 테이블 간의 데이터를 일관성 있게 유지할 수 있도록 하는 제약 규칙

* 기본 테이블의 기본 키 필드에 존재하지 않는 데이터는 상대 테이블의 외래 키 필드 값으로 입력할 수 없다.

ex. 학생. 테이블의 '학번' 필드에 있는 값만 <수강과목>의 '학번' 필드에 있어야한다.

* 상대 테이블의 외래 키 필드의 값이 기본 테이블의 기본 키 필드에 존재할 때, 기본 테이블의 해당 레코드는 삭제할 수 없다.

ex. <수강과목> 테이블에 존재하는 '학번' 필드의 레코드는 <학생> 테이블에서 삭제할 수 없다.

관련 필드 모두 업데이트

- 기본 테이블의 기본 키 값이 바뀔 때마다, 연결된 상대 테이블의 해당 필드 값이 자동으로 변경되도록 설정

관련 레코드 모두 삭제

- 기본 테이블의 레코드를 삭제할 때마다, 연결된 상대 테이블의 관련 레코드들이 자동으로 삭제되도록 설정




작가의 이전글데이터베이스