배움터  
  HOME > 배움터 > 무료강좌
무료강좌
 
액세스 2000, 김규경님의 데이터베이스 기초 다지기 - 2강. 데이터베이스 기초 2: 구성 요소 #1, Access 2000
 


2강. 데이터베이스 기초 2: 구성 요소 #1

이제 이러한 데이터베이스를 구성하고 있는 요소들의 정의와 역할을 알아 봅시다.

Table, Field, Record

고객 명함관리 자료의 구조를 확인해 봅니다.

이렇게 일정한 양식으로 자료가 구성되었을 때 '구조적'이라고 부릅니다. 
이런 형태를 테이블이라고 하고, 각 행(Row)의 자료를 레코드(Record)라고 부릅니다. 예시된 표에서는 7 레코드가 있습니다. 또 각 열(column)을 필드(항목, Field)라고 한다. 첫 줄은 필드의 이름입니다.

용어정리

  • Field : 필드, 항목, 어떠한 의미를 지니는 정보의 한 조각으로, 데이터베이스 시스템에서 처리의 최소 단위가 되는 것. 
  • Record : 레코드, 정보를 처리하는 기본적인 단위로 하나 이상의 항목(field 또는 item)의 모임. 
  • Table : 테이블, 빠른 참조를 위해 적당한 형태로 자료를 모아 놓은 것. 관계 데이터 베이스 모델(relational data base model)에서 자료의 구조를 2차원의 표로 나타낸 것. 즉, 행과 열의 형태로 관리되며 키를 지정함으로써 원하는 자료를 빠르고 쉽게 찾아 낼 수도 있다. 
    예를 들어 인사 기록 파일이 있다면 각 사람에 대하여 이름, 사원번호, 나이 등이 필드가 될 수 있다. 또 이러한 필드가 여러 개 모여 한 사람 분의 자료가 된 것이 레코드이다. 레코드가 모여 인사관리 테이블이 된다.
  • Domain : 도메인, 어떤 조건을 만족하는 범위에 들어있는 값이 도메인을 구성한다.
    여기서 조건은 어떤 열(Column), 즉 필드 값에 주어지며 이 조건에 유효한 값의 범위, 수학적인 용어로 말하자면 정의역(定義域)에 들어있는 집합을 도메인이라고 한다.
    나중에 언급되겠지만 액세스는 도메인과 관련된 합계, 평균, 레코드개수 등의 계산을 행하는 함수(도메인계산함수)를 지원한다. 

데이터의 저장과 데이터 형식

지금까지 자료를 저장할 테이블과 필드 등에 대해 알아 보았습니다. 이렇게 만들어 놓은 저장소에 자료를 저장할 때 어떤 방식으로 자료를 저장하는 것이 좋을 것인가 한번 생각을 해보도록 합시다. 
쓰레기 분리수거가 좋은 예가 될 것 같습니다. 여러분 처음 분리수거를 시행할 때 '쓰레기는 쓰레기지 무엇 때문에 이렇게 복잡스럽게…. ' 이런 생각을 많은 사람들이 했었을 겁니다. 그렇지만 무엇 때문에 분리수거를 하였습니까? 재활용하고자 한다면 이런 방법이 최선의 방법이란 것을 알 수 있습니다. 우리가 저장하고 다시 사용할 데이터도 마찬가지입니다.
자료로 취급하는 수많은 자료들을 저장할 때 데이터베이스는 좀더 철저하게 구분하는 것이 좋습니다. 일정한 형식의 자료가 일정한 필드에 들어가야 할 겁니다. 뒤죽박죽이어서는 자료를 재활용할 때 매우 불편할겁니다. 그리고 유효한 자료만 입력되어야 할 겁니다. 만약 2001-12-31을 입력한다는 것이 200112-39 이라고 입력되었다고 합시다 누가 이것이 날짜를 의미한다고 생각하겠습니까? 따라서 유효한 자료만을 입력하기 위한 하나의 방편으로 데이터 형식을 구분하고 있습니다. 

자료의 유효성을 유지하기 위한 지원사항과 방법에 대해서는 다음에 언급하도록 하겠습니다.

데이터는 몇 가지 형식으로 구분할 수 있는가?

Q:
첨부파일에서 뭐가 잘못되었는지 알려주세요.
도무지, 뭐가 잘못되어서 실행이 안 되는지 모르겠는데....
언젠가.. 이걸 질문한적이 있었는데.. 
제가 원하는 답변을 못 얻어서 끙끙대고 있었거든요
이걸 다시 질문해야 될지.. 망설이다가 
꼭 알아야겠더라 구요.. 
===============================================
* 테이블명 : 교과성적
필드명 형식 크기
-----------------------------------------------
학번 Text/String 50
문학 Text/String 50
국사 Text/String 50
전일 Text/String 50
상식 Text/String 50
===============================================
Function Myrank(Tot As Integer) As Integer
Dim dbs As Database
Dim sm As DAO.Recordset
Dim sql As String
     sql = "Select [문학],[국사],[전일],[상식] as 총점 from 교과성적 orderby 
     [문학]+[국사]+[전일]+[상식] desc;"
     Set sm = CurrentDb.OpenRecordset(sql, dbOpenSnapshot)
     With sm
          .FindFirst "[총점] = " & Tot
          Myrank = .AbsolutePosition + 1
     End With
End Function

A:
테이블에서 과목들 필드형식을 숫자로 바꾸십시오.
그리고 MyRank 사용자함수에서
sql = "Select [문학]+[국사]+[전일]+[상식] as 총점 from 교과성적 order by [문학]+[국사]+[전일]+[상식] desc;" 라고 수정하시면 됩니다.

자료를 눈으로만 보는 데는 자료의 형식은 별로 의미가 없습니다. 그러나 자료를 저장하여 전산관리를 하는 경우라면 얘기가 틀려집니다. 효율적인 관리를 위하여 또 자료마저 구분해 놓습니다. 사실 이러한 구분은 아마 유치원에서부터 익혀 왔을 겁니다. 1, 2, 3, ㄱ, ㄴ, ㄷ 등을 섞어 놓고 숫자 골라내기를 하면서…. 그렇지만 그러한 의미는 디지털 데이터베이스 세상에서는 아주 명확해 집니다. 위의 질문과 같이 숫자와 문자(텍스트)의 구분을 하지 못하면 원하는 결과는 전혀 얻지 못하게 됩니다. 테이블을 만들기 전에 또는 변수를 만들기 전에 반드시 정보의 이러한 형식을 결정해 두어야 합니다. 디지털 세상은 조건 분석과 계산으로 이루어집니다. 앞으로 설명하는 자료 형식을 반드시 알아야만 조건식을 작성할 수 있습니다. 조건식 작성에 대해서는 데이터베이스 기초에 대한 강좌가 끝나면 따로 설명드리겠습니다. 물론 액세스 도움말 마법사에서 '조건식'으로 검색하시면 자세한 내용을 알아 볼 수 있습니다.

아래 예를 봅시다.

예1 예2 예3
1200 02-123-9876 2000-1-1
-1300 062-221-5566 2000-1-2
1750 372-1472 2000-1-3

모두 숫자로 구성되어 있지만 모두 다른 의미를 가지고 있을 겁니다. 
     예1 '1650원 흑자이군"
     예2 '이 전화번호는 누구 전화번호일까?"
     예3 '새해 연휴에 무엇을 하지?'

이제 데이터베이스에서 취급하는 자료의 형태를 생각해 봅시다.

1. 자료형식의 구분은 데이터베이스관리에 있어서 매우 중요합니다.
우리는 위의 3가지 예를 볼 때 모두 숫자로 봅니다. 그렇지만 생각을 정리할 때는 모두 결과가 다릅니다. 그러나 이러한 해석을 컴퓨터는 할 수 없는 겁니다. 대신 컴퓨터에게 구분하여 알려주어야 하는데 그러한 구분을 우리는 '자료형'이라고 부릅니다. 자료형식의 구분은 데이터베이스관리에 있어서 매우 중요합니다. 

2. 또 하나 중요한 것은 크기입니다. 
우리가 머릿속에서 계산된 자료를 종이에 적듯이 하드디스크 등 자료를 보관하는 장치에 이진수로 기록이 됩니다. 개념적인 자료가 물리적인 자료로 변형이 되면 공간을 차지하는데 당연히 크기에 따라 차지하는 공간도 달라지게 됩니다. 이름, 나이, 생일, 성별, 우편번호, 주민등록번호 등과 같이 그 크기가 일정하거나 거의 일정한 자료도 있고 취미, 주소와 같이 일정치 않으나 크기가 크지 않은 자료도 있으면 친구에 대한 자기의 생각을 적는 자료와 같이 상당히 크기가 큰 자료도 있습니다. 그런데 이러한 자료를 각각 수첩의 한 페이지를 차지하도록 기록을 남긴다면 어떻게 될까요? 자료를 찾는데 시간이 걸리겠지요? 따라서 우리는 자료의 형태와 크기를 다양하게 준비하여 공간의 낭비를 최소화 하고 관리하는 속도를 최대화하고자 하는 겁니다. 

3. 자료의 형을 구분하는 또 하나의 잇점은 신뢰성 있는 자료의 입력에 있습니다. 
날짜를 입력할 부분에 숫자대신 영어나 한글이 입력된다면 어떨까요? 이러한 오류를 피하려면 자료를 입력하고 나서 저장하기 전에 다시 올바른 자료가 들어있는가를 입력자가 반드시 확인해야 하는 번거로움이 있는데 자료 형을 구분해 두면 액세스가 확인을 해주므로 매우 편리합니다.

이상과 같이 자료형태의 규정은 데이터베이스 관리의 첫걸음이자 제일 중요한 내용입니다.
따라서 반드시 알고 넘어가야 합니다.

 

  목차 | 이전 | 다음