엑셀 vs 데이터베이스 비교 1탄
엑셀 vs 데이터베이스목차 바로가기
강의 소개
이번 강의에서는 엑셀과 데이터베이스의 차이점 중 데이터 구조와 형식, 그리고 입력되는 데이터의 제한과 파일형식(BLOB) 데이터 관리의 차이점을 알아봅니다. 스프레드시트의 시초인 데이터베이스를 잘 이해하는 것은 엑셀을 엑셀답게 이용하는데 훌륭한 토대가 됩니다.
엑셀을 사용하면서 표/테이블 설정 또는 피벗테이블을 사용하는데 어려움이 있으셨나요? 데이터 정규화 과정을 이해하시면 피벗테이블을 더욱 효율적으로 이요할 수 있습니다.
이번 강의에서는 데이터 정규화를 알아보기 전 맛보기 단계로, 엑셀과 데이터베이스의 차이점을 하나씩 살펴보겠습니다.
영상강의
예제파일 다운로드
일부 예제파일은 오빠두엑셀 홈페이지 회원에게만 제공됩니다.
- [기초레벨업] 엑셀 vs 데이터베이스 전격비교 (1/2)예제파일
1. 엑셀과 데이터베이스 차이점 요약
엑셀과 데이터베이스의 차이점 요약표 엑셀은 각 'Cell' 간의 관계를 형성합니다. 따라서 사용자가 행/열의 구조를 신경쓰지 않아도 자유롭게 계산과 편집이 가능합니다. 또한 각 셀이 독립적으로 동작할 수 있어서, 다양하고 강력한 기능을 손쉽게 구현 할 수 있습니다.
데이터베이스는 각 '열(Column)과 테이블(Table)' 별로 관계를 구성하기 때문에, 사용자가 데이터를 설계할 때 각 열/테이블 간의 관계(Query)를 고려해서 진행해야 합니다. 따라서 사용자가 더 논리적으로 생각하고 데이터를 설계해야 되는 번거로움이 있습니다.
하지만 이러한 차이점으로 인해 데이터베이스는 엑셀보다 많은 양의 데이터를 더욱 빠르게 처리할 수 있으며 더욱 체계적으로 데이터를 관리할 수 있습니다.
엑셀은 셀 간의 관계를 형성하고 독립적으로 동작합니다. 데이터베이스는 열과 테이블간의 관계를 형성합니다. 엑셀은 (2007 이상 기준) [최대 1,048,576개의 행] [최대 16,348개의 열] [최대 32,767개의 글자수/셀]을 입력할 수 있습니다.
데이터베이스는는 행과 열의 갯수에 제한이 없습니다. 또한 입력되는 데이터 형식에 따라 다르지만 LONG TEXT 타입의 경우 최대 2^32개 (약 42억개)의 글자수를 입력할 수 있습니다.
엑셀은 최대 1,048,576개의 행, 16,348 개의 열 까지 입력 가능합니다. 엑셀은 각 셀안에 어떠한 데이터든 구분없이 입력 가능합니다. 예를 들어, 밑에 그림처럼 [금액] 열에는 숫자만 들어가야 데이터 관리가 편하지만 각 셀에는 숫자와 글자 구분없이 입력할 수 있습니다.
단가의 경우 숫자만 입력을 해야 관리가 편하지만, 같은 열에 어떠한 형식의 데이터든 입력 가능합니다. 물론 데이터 유효성검사 통해서 데이터의 입력제한이 가능하지만,
이는 데이터를 필터링하는 개념이고 셀안에 들어가는 데이터를 제한할 수 없습니다!밑에 그림과 같이, 데이터 유효성검사를 통해 입력되는 데이터의 값을 "10 이하의 값"만 입력 가능하도록 설정하였지만 기존에 입력되어있던 11의 값은 그대로 유지되어 있습니다.
'엑셀과 데이터베이스'의 이러한 차이점은 이후에 데이터 편집/처리 속도에 지대한 영향을 줍니다. 따라서 데이터베이스는 엑셀보다 훨씬 빠르게 데이터를 처리할 수 있습니다. 물론 엑셀은 약간의 처리속도를 잃음으로써 사용자의 편리성이라는 또다른 이익을 얻었다고 볼 수 있습니다.
셀에 입력되는 값을 최대 10 이하로 설정하였지만, 기존에 입력되어있던 11이라는 숫자는 그대로 유지가 됩니다. 엑셀에는 이미지를 삽입할 수 있습니다. 하지만 이 이미지가 정말로 '셀 안'에 삽입이 되는 것일까요? 아닙니다.
엑셀에 삽입되는 이미지는 '셀 안'에 삽입되는 것이 아닌, 시트위에 얹혀지는 개념입니다.
A1안에 '오빠두로고' 이미지와 텍스트를 동시에 입력하고, A1셀을 지워보겠습니다. 셀 안에 텍스트는 삭제가 되었지만, 이미지는 삭제가 안되고 남아 있는것을 볼 수 있습니다.
A1 셀에 입력된 그림과 텍스트를 지워보겠습니다. 입력되어있던 텍스트는 삭제가 되었지만, 그림파일은 그대로 남아있습니다. 반면에 데이터베이스는 각각의 레코드(Cell)안에 파일 데이터가 독립적으로 입력이 됩니다. 뿐만아니라, 데이터베이스에 파일을 삽입하기 위해서는 반드시 BLOB형식으로만 지정을 해야합니다. 데이터형식이 BLOB 형식으로 지정될 경우, 해당 열에는 파일 이외에 어떠한 다른 값을 입력하지 못하도록 제한됩니다.
6. 기타 링크
- 강의에 사용된 데이터베이스 쿼리 관리 프로그램 다운로드 (FlySpeedQuery SQL)
https://www.activedbsoft.com/download-querytool.html - MySQL 다운로드
https://www.mysql.com/downloads/
- 강의에 사용된 데이터베이스 쿼리 관리 프로그램 다운로드 (FlySpeedQuery SQL)