오늘부터 다음의 주제로 엑셀에서 데이터베이스를 다루는 것에 대한 강좌를 개설한다.
- Database는 무엇인가, 왜 엑셀에서 database를 다룰 때 잇점은?
- 엑셀에서 다룰 수 있는 DB의 종류는? (EXCEL SHEET, MYSQL, ORACLE, MSSQL 등…)
- Database에 접속하기
- Microsoft의 DATA ACCESS MODEL
- DB의 DATA를 읽어오기
- DB에 DATA를 추가하기
- DB의 DATA를 수정하기
- DB의 DATA를 삭제하기 등...
강좌에 들어가기 전에 간단히 데이터베이스 무엇인지, 엑셀에서 사용할 수 있는 데이터베이스에는 어떤 것 이 있는 지, 엑셀에서 데이터베이스를 다루면 어떠한 장점이 있는 지 간단히 한번 살펴보자.
Database(데이터베이스)라고 하면 뭔가 자료를 모아 놓은 것이라고 할 수 있다. 자료를 모아 놓고 여러 사람이 동시에 쓸 수 있도록 한 것이 데이터베이스라고 하면 쉽게 이해 될 것이다. 우리가 사용하는 엑셀 파일도 일종의 데이터베이스이다. 엑셀파일에 자료가 모여있고 공유모드로 설정하면 여러 사람이 동시에 파일을 열어서 내용을 볼 수 있고 자료를 수정하고 저장 할 수 있다.
데이터베이스에는 여러 종류가 있다. 계층형 데이터베이스 관리시스템 (HDBMS), 네트워크형 데이터베이스 관리시스템 (NDBMS), 관계형 데이터베이스 관리시스템 (RDBMS), 객체관계형 데이터베이스 관리시스템 (ORDBMS) 등이 있는데, 현재는 많은 사람들이 관계형 데이터베이스 관리시스템 (RDBMS)를 사용하고 있고 데이터베이스라고 하면 보통 관계형데이터베이스 관리시스템을 말한다고 보면 틀린 말이 아닐 것이다. 따라서 지금부터 하는 강좌는 관계형 데이터베이스 관리시스템 (RDBMS)만을 다룬다.
예전에는 데이터베이스를 다루기 위해서는 서버도 있어야 하고 비싼 데이터베이스소프트웨어도 있어야 했는데, 요즘은 세상이 많이 좋아져서 무료 데이터베이스도 많고 엑셀파일 자체를 데이터베이스로 이용할 수 도 있다.
또한 데이터베이스를 이용하기 위해서 데이터베이스 서버에 연결도 해야 하고 여간 복잡한 것이 아니었는데 엑셀에서는 데이터 베이스 연결도 손쉽게 하고, 데이터베이스의 자료 가공도 아주 쉽게 할 수 있게 되었다.
엑셀에서 연결할 수 있는 Database는 여러 종류가 있다. Microsoft SQL Server, Oracle, MySQL, Maria DB 등.. 상용 Database, 오픈소스 Database 가릴 것 없이 Database개발사에서 Driver만 제공하면 엑셀에서 연결가능하다.
엑셀에서 Database에 직접 연결하면 그간 우리가 사용해 오던 프로그램이나 IT시스템(ERP, 웹시스템 등)을 사용하지 않고도 Data를 조회하고 분석하고 가공할 수 있다. 엑셀에서 제공하는 기능만 이용하여 프로그램을 개발하지 않고도 데이터베이스를 이용할 수 있지만 VBA(Visual Basic for Application)을 이용하여 약간의 프로그램을 짜면 원하는 대로 Database를 주무를 수 있다.
서론이 길었는데, 다음 강좌부터는 실제 어떻게 Database를 사용하는지 보도록 하겠다.
[ 엑셀에서 Database사용하기 강좌 목록 ]
- 18강 - VBA로 MS SQL Server에 연결하여 Data처리하기(Stored Procedure로 조회)
- 17강 - VBA로 PostgreSQL에 연결하여 Data처리하기(ADO를 이용하여 조회,추가,수정,삭제)
- 16강 - VBA로 MariaDB에 연결하여 Data처리하기(ADO를 이용하여 조회,추가,수정,삭제)
- 15강 - VBA로 MySQL에 연결하여 Data처리하기(ADO를 이용하여 조회,추가,수정,삭제)
- 14강 - VBA로 Oracle DB Server에 연결하여 Data처리하기(ADO를 이용하여 조회,추가,수정,삭제)
- 13강 - VBA로 MS SQL Server에 연결하여 Data처리하기(ADO를 이용하여 조회,추가,수정,삭제)
- 12강 – VBA로 Access DB에 연결하여 Data처리하기(ADO를 이용하여 Data삭제)
- 11강 – VBA로 Access DB에 연결하여 Data처리하기(ADO를 이용하여 Data추가)
- 10강 – VBA로 Access DB에 연결하여 Data처리하기(ADO를 이용하여 Data조회 및 저장)
- 9강 – VBA로 Access DB에 연결하여 Data처리하기(ADO를 이용하여 연결, 조회)
- 8강 - VBA로 엑셀에서 Database 연결 및 처리를 위한 ADO이해
- 7강 – VBA로 엑셀에서 Database 연결, Data처리 기본개념
- 6강 – VBA로 엑셀Sheet에 연결하기(Data삭제-ADO이용안함)
- 5강 – VBA로 엑셀Sheet에 연결하기(ADO를 이용하여 Data추가)
- 4강 - VBA로 엑셀Sheet에 연결하기(ADO를 이용하여 조회 및 저장)
- 3강 - VBA로 엑셀Sheet에 연결하기(ADO를 이용하여 연결, 조회)
- 2강 - Microsoft Query를 이용하여 Database에 연결하기
- 1강 - 들어가기 - Database는 무엇인가, 왜 엑셀에서 Database를 다루는가?
좋은정보 감사합니다.
질문이 하나 있습니다.
엑셀에서 Database로 연결하여 Data를 불러오면 최대 255까지만 불러오는데 더 늘릴수 있는 방법이 있는지 궁금합니다.
안녕하세요. 하나의 필드에서 255글자 까지만 나온다는 말씀이신가요? 아니면 255행만 나온다는 말씀이신지 확인부탁드립니다.
답글이 늦었습니다.
하나의 필드에서 255글자까지만 나오는 문제 입니다.
구글링해봐서는 지원을 안하는것 같은데...잘 모르겠습니다.
안녕하세요. Excel ODBC driver는 엑셀에서 값을 읽어 올때 최초 8개의 레코드를 읽어서 데이터 타입과 크기를 결정합니다. 8행안에 있는 레코드의 길이가 255자보다 작으면 255자까지만 읽어오지만 레코드의 길이가 255자보다 크면 큰 값도 읽어옵니다. 이 점을 이용해서 약간 트릭을 써서 해결할 수 있습니다. 맨 첫레코드(타이틀 제외)에 255보다 더 큰 값을 임의로 채우고 사용하면 됩니다.
감사합니다.
확인 감사합니다.