이번에 진행하는 프로젝트가 처음엔 C#에서 SQLite를 채택을 했었습니다.


물론 파일기반 DB라서 제약사항은 많지만,

사용에 있어서는 다른 DB와 큰 차이는 없는데다가 이전에도 많이 사용해왔던 DB이기에

DB 자체에 대한 불평은 없습니다.


그런데 나름 C#이라고 MS가 만든 신박한 EntityFramework라는 ORM이 버텨주고 계시니

수고를 덜기위해 적극적으로 활용하면 좋겠다는 생각이 들은 바

구글링을 통해 여러가지 사용 방법들을 적용시켜 보았지만, 결국 엔티티 프레임워크에 SQLite를 인식시키는데 실패하였습니다.

실제 코딩하기도 바쁜데 SQLite를 프레임워크에 인식시켜야 한다는 그 생각만으로 5일을 훌러덩 날려버렸더군요.


다행히 ConnectionString을 이용한 코드 내부에서의 접속은 잘 되기때문에

결국 직접 Model 생성하고 컨트롤러 부분도 직접 쿼리 문을 작성하여 진행하긴 했는데

늘 하던 짓 반복하는 것 뿐임에도 개발하는 사람 입장에서 ORM의 달콤함도 나름 알고있어서

프레임워크에 SQLite 인식 못시킨게 너무 답답하더군요.


아예 ORM에 열광할 필요없는 NoSQL 계열 DB로 전환을 할까 생각하다가

업무요건 자체가 여러 사람이 보아도 RDBMS의 사용이 적합한 요건이였기에

미처 컨트롤러를 작성하지 못한 부분에 대해선 데이터 보조를 위해 잠시 NoSQL을 사용했습니다.


그러면서도 결국 이유를 못찾고있다가 오픈소스 관계형 데이터베이스 시장에서 2인자라고 불리는 PostgreSQL로

SQLite 데이터를 이관시켜 프레임워크에 인식시키자라는 생각을 했습니다.

많이 오르내리는 DBMS인 만큼 EntityFramework에 인식시키는데에도 무리가 없을 것이라고 생각했는데

기대는 절망으로 바뀌더군요.


비주얼 스튜디오 닷넷 개발에서의 EDM을 MS-SQL이 아닌 다른 DB에서 사용해보겠다고 이 난리를 떠는건데도

상용의 공개버전으로 나온 Provider는 아예 돈주고 안사면 EDM은 없을거라고 하질 않나

오픈소스 Provider는 단순히 프로바이더 설치만을 강조하다가 한참을 찾은 뒤에야

겨우 VS의 DB 접속 리스트에 올릴 방법을 찾았는데도 현재 해결되지 않고있다는 버그로 인해 연결은 되었으나 사용은 실패...

(해당 프로젝트의 깃허브 페이지에서 아예 해결중인 버그로 올라와 있더군요.)

* EDM: 엔티티 프레임워크의 모델 생성 기능


그렇다고 이런 고생없이 확실하게 지원될 것이 뻔한 MS-SQL이나 Oracle DB를 쓸 수 있는 상황도 아닌데

단념하고 상당히 친숙한 MariaDB(MySQL)을 써볼까 해서 설치하고 VS를 위한 셋팅도 해보았습니다.

이것 역시 Provider(Connector) 설치와 별도로 VS 설정을 위한 내용은 따로 설치를 해줘야 했지만 순조롭게 흘러가더군요.

이후 Nuget으로 필요한 Data 패키지 설치도 마치고 확인을 해보는데


맙소사.... 다른 DB 사용하여 근 한달은 고민하며 끙끙 앓았던 문제를 1시간 안에 다 해결해 주시더군요.

다른 DB를 어떻게든 EntityFramework에 연결시켜 보겠다는 집념과 노력과정이 다 허무해질 정도로요.....


한편으로는, SQLite나 PostgreSQL이나 최근 들어서는 절대 마이너한 DB가 아니라는 생각이 드는데

MS에서 제공하는 ORM 하나 연결하는데도 왜이리 애를 먹게 되는지 한편으로는 이해가 안되더군요.

실력 부족이라고 말할 수도 있겠지만, 그래도 C# 프로젝트에서 주력 DB로 채택될만한 적절한 연동난이도가 있는거지...

단순히 DBMS 선택에 따라 연동과정을 최소 한시간만에 해결하거나 최대 며칠이 걸려도 포기하기 되는 차이는

너무 수용할 수 있는 범위를 벗어나 있는 것 같더군요.


웹에서는 MySQL 많이 해봤으니까 데스크탑용 어플리케이션임에도 다른 DB 기반으로 가보겠다고 하다가

개발일정만 지연됬다고 욕 엄청 먹고 몸사리고 있게 되었네요....

No. Subject Author Date Views Votes
Notice SQL강좌: 챗GPT와 함께 배우는 SQL Server 무료 강좌 목차와 소개 (2023년 9월 업데이트) 코난(김대우) 2023.08.18 38045 1
Notice Python 무료 강좌 - 기초, 중급, 머신러닝(2023년 6월 업데이트) 코난(김대우) 2021.01.01 20666 1
11316 2017년 2월 15일(수) 오후 1시 - 스카이프로 온라인 스터디를 해보려고 합니다. jevida(강성욱) 2017.02.09 3951 0
11315 LA 거주하시는분 있으면 함께 스터디 해요. jevida(강성욱) 2017.01.28 3044 0
11314 가입인사 드립니다~ 꿈꾸는개발자 2017.01.16 2439 0
» EntityFramework가 아직은 마이너 DB에서는 아닌가봅니다. 웃는하루 2017.01.01 3094 0
11312 c# Linq로 쿼리 조회 하려는데 질문 있습니다 식뽕 2016.11.29 3206 0
11311 MSSQL 2008 Standard에 미러링 구성 가능한가요?? [1] 예스팝 2016.11.17 3700 0
11310 여기 사이트는 죽은건가요?? [4] 뚜뽀 2016.11.14 4112 0
11309 SQL 초보자입니다 도와주세요!! [4] 빵테온 2016.09.30 11271 0
11308 MS SQL 익히기 적절한 책 추천 부탁드려요 [2] kerry 2016.09.21 4894 0
11307 ssms 한글 변환 버그 수정 addin 소개-SQL Mate 반딧불호롱불 2016.07.03 6046 0
11306 node.js + 몽고 DB 관련 서적 추천 좀 부탁 드립니다. pertime 2016.06.07 4992 0
11305 ms access 질문은 어디다 하면 되는거죠..? [1] Blue2 2016.04.05 5364 0
11304 c# 관련해서 질문드립니다^^;; [2] 아배고파젠장 2016.03.21 6026 0
11303 SQL을 자동 생성해주는 사이트를 만들었습니다 [13] 조동건 2016.02.22 8358 0
11302 웹사이트, 모바일 앱, 서비스 플랫폼을 제작해드립니다! 시냅스테크놀로지 2016.02.15 5691 0
11301 안녕하세요 WebRTC 개발을 하려고하는데요. 인막노수 2016.02.03 5893 0
11300 [Microsoft] 12월 한정 이벤트 - ‘Active Directory의 정석’ 강좌도보고 푸짐한 선물도 받고!! 호루룰 2015.12.11 7316 0
11299 MS 백승주 에반젤리스트, Active Directory의 정석 무료 온라인 강좌듣고 선물도 받아가세요~ 호루룰 2015.12.11 9125 0
11298 가입인사.꾸벅 [1] NoSkyIstheLimit 2015.12.08 4649 0
11297 10/27 MS TechDays Korea 2015 ! 개최한다네요! 개발자 컨퍼런스! 와우~! 호루룰 2015.10.15 6399 0





XE Login