logo

TEL:(+81)050-7117-8096※전화는 일본어만 가능합니다.
부재 중일 경우 다시 연락드리겠습니다

Language: 🇯🇵 日本語 🇰🇷 한국어
칼럼 목록으로 돌아가기

전국 업무시스템 상담센터 업무시스템 칼럼Vol.125 2022.03.01(수)다카하시 미노루

왜 MS-Access의 이미지가 나쁜가

신세지고 있습니다.
의 타카하시입니다.

이번 칼럼에서는
왜 Access의 이미지가 나쁜가?
에 대해 제 생각과 예상을 적어보겠습니다.

경험상, Access는 데이터베이스의 고도화된 시스템 구축이 불가능하다고 여겨지는 경향이 있습니다.
사실, 동종 업계(시스템 개발자) 사람들로부터조차 그런 의견을 듣곤 합니다.
단언컨대, 이는 틀림없이 편견입니다.

■Access는 사내 개발 시스템의 표준이다

기업 내에서 데이터베이스를 활용한 시스템을 자체 개발한다고 하면
이라고 하면, 바로 떠오르는 것이 Microsoft Office Access입니다.
이는 사내 시스템 개발자(SE) 사이에서 VBA의 점유율을 고려하면 당연한 일입니다.

■이러한 편견의 이유는 ‘Access를 다뤄본 사람이 너무나 많기 때문’에 있습니다

정확한 통계 등의 데이터는 가지고 있지 않아 예상에 불과하지만
Access를 이용했거나 이용을 검토해 본 경험이 있는 사내 SE는
정말 많을 것입니다.

Office 에디션에 따라 Access가 무의식중에 설치되어 있기도 하고
프로그램을 작성할 때도 Excel VBA(매크로)와 공통점이 매우 많고,
또한 GUI를 통해 쿼리나 폼, 리포트 객체를 쉽게 만들 수 있다는 점도 있어
수많은 프로그래밍 언어 중에서도 Access는 단연코 ‘접근하기 쉬운’ 언어이기 때문입니다.

하지만 Access VBA에는 Access VBA만의 ‘요령’
즉, 시스템을 능숙하게 제작하기 위한 난관이 몇 가지 존재합니다.

입문 장벽이 낮고 접근하기 쉬우며, 표준이라 할 만큼 널리 보급되어 있어
무의식적으로, 혹은 어쩔 수 없이 선택하는 사내 개발자도 적지 않지만
다른 언어와 마찬가지로 막상 깊이 파고들려고 하면 결코 만만치 않습니다.
그것이 바로 Access VBA입니다.

접해 본 사람이 너무나 많지만
중도 포기한 사람도 너무나 많고
그 결과, 근거 없는 악평을 퍼뜨리는 사람도 너무나 많다
이것이 바로 Access에 대한 편견의 근본적인 원인일 것입니다.

■마이크로소프트의 과실도 일부 있다

이 문제에 대해서는 Access를 제대로 다루지 못한 사람들만을 탓할 수는 없습니다.
Access에는 다른 언어에 비해 특이한 제약이 있어,
다른 언어에 비해 특이한 제약이 있어, 신입 사내 SE의 앞길을 가로막고 탈락하게 만드는 요소가 많습니다.

・Windows Update로 인한 불규칙적인 버그 발생
・버전이나 OS의 호환성 문제
・파일 2GB 제한 (1GB를 초과하면 오류가 점차 늘어납니다)
・다수가 동시에 액세스하면 파일이 아주 쉽게 손상됩니다
・Access 자체의 버그(MSBARCODE.DLL 문제 등)
・무한 루프나 멈춤 현상 발생 시 중단하기가 극히 어렵다

등, Access를 다루려면 이러한 요소들을
수작업(직접 작성하는 소스 코드)으로 잘 보완해 줄 필요가 있으며,
이 점은 마이크로소프트의 책임이라고도 할 수 있겠습니다.

■Access로 시스템을 제작할 때의 핵심

Access로 시스템을 효과적으로 제작하기 위한 요령을 소개해 드리겠습니다.
이 기회에, 일부에 불과하지만 Access로 시스템을 효과적으로 제작하기 위한 요령을 소개해 드리겠습니다. 앞으로 시도해 보실 분들께 참고가 되기를 바랍니다.

・프로그램용 파일과 데이터용 파일은 반드시 분리한다
・매크로를 사용하지 않는다 (AutoKeys 등 일부 매크로는 어쩔 수 없이 필요하지만)
・쿼리를 사용해야 하는 경우에는 VBA를 통해 매번 삭제/생성한다
・바이너리 필드를 사용한 테이블을 정의하지 말고
탐색기를 통한 파일 공유
(SMB나 클라우드 스토리지 등)과 결합한다
・데이터베이스가 커질 것으로 예상되거나,
또는 10명 이상이 이용할 것으로 예상되는 경우
처음부터 SQL Server나 SQL Azure 등을 병용하는 설계로 한다
・소스 코드를 지나치게 복잡하게 만들지 않는다(사양을 지나치게 세밀하게 잡지 않는다)
요구 사양을 본질적으로 파악하고, 구현은 간결하게 유지한다
・명령어의 모듈화, 테이블의 정규화는 적당히 한다
・비동기 처리 구현에 도전하지 않는다
・자신의 기술 지식의 한계를 Access의 한계라고 오해하지 않는다
・Windows OS 지식을 VBA와 병행하여 학습한다


이상입니다.
요즘 같은 시대에는 Access 노하우를 배우기 위해 책을 찾을 필요가 없습니다.
SE로서의 자질과 인터넷 검색 환경만 있다면 충분합니다.
함께 훌륭한 Access 시스템 유지보수자가 될 수 있도록 매일 노력합시다.

금일도 수고 많으셨습니다.

------------------------------

■인접 칼럼 안내■

<<< 한 편 새로운 칼럼으로 Vol.126 - 내제 시스템의 장점 2022.04.01

>>> 한 편 이전 칼럼으로 Vol.124 - 시스템이란 사내외의 전달 게임이다 2022.02.01

칼럼 목록으로 돌아가기

문의하기

저희에게 편하게 상담해 주세요

아래 양식에 필요사항을 기재하신 후 「전송하기」를 클릭해 주세요.
*표시 항목은 필수 입력 사항입니다.
법인명・담당자명*
연락처
이메일 주소*
선택(임의)
문의 내용 상세*

전송 중입니다. 잠시 기다려 주세요...

문의해 주셔서 진심으로 감사합니다.
문의가 접수되었습니다.
담당자가 순차적으로 연락드리겠사오니
잠시 기다려 주시기 바랍니다.