[SQLCE강좌] 1. SQLCE란? // SQLCE설치

안녕 하세요.
멍구 입니다.

SQLCE에 대해 강좌를 시작 하려는데요.
여기저기 흩어진 자료는 많이 있는데..
한눈에 딱 보기 쉽게 되이 있는 자료는 없는듯 해서요.
( 사실은 찾기가 귀찮아서..ㅡㅡ;)
제가 기억력이 나빠.. 혹시나 잊었을때, 볼 수있도록 강좌로 엮어 볼까 합니다.

제가 지구력이 떨어지는 관계로 용두 사미가 될지 모르겠네여.
일단 시작 하겠습니다.

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

SQLCE란?

WinCE에서 구동 할 수 있는 일종의 DBMS입니다.
DBMS는 아시죠? MSSQL, MySQL, Sybase, Oracle 같은 덩치 큰 것들이요.
SQLCE는 Micorsoft에서 WinCE환경의 PDA에서 탑제 할 수 있도록 MSSQL을
엄청 나게 축소해 놓은 거라생각하시면 되겠네요.

현재 2003. 7기준으로 SQLCE는 버전 2.0까지 나와있구요.
설치하면 쿼리에널라이즈나 엔터프라이즈 관리자를 합쳐서 작게 만든듯한 툴도
포함 되어 있습니다.


제가 이번 강좌에서 다룰 부분은요.
RDA와 MR이라는 MSSQL과의 동기화 부분입니다.

저 역시 DB쪽은 많이 부족한 관계로 깊이 있게 다루지는 못하겠네요..^^;

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

SQLCE가 WinCE기반의 PDA에서 구동되는 것이다 보니, 개발툴 역시
Embedded Visual Tools(이하 EVT)을 사용해야 하구요, EVT에서 사용할 수 있는
언어는 Embedded Visual Basic(이하 EVB)와 Embedded Visual C++(이하 EVC)
가 있습니다. 어느 언어를 사용 하시든지 SQLCE를 사용 하시든지 상관없지만,
제가 해본 언어가 EVC인 관계로 EVC위주로 설명 드리겠습니다.

EVB기반의 SQLCE에 관한 강좌를 보구 싶으시면
http://lab.netsvill.net/Laboratory/PCLab/DTSR/Quest/q11.htm 이곳을 가보세요.
SQLCE뿐 아니고 MSSQL을 전반적으로 다루는대.. 유용한 정보들이 많이 있네요.

--------------------------------------------------------------------
설치

SQLCE 2.0는 설치시 조금은 신경을 써주어야 합니다.

개발자 PC ( MSSQL Client ) 설치 순서는 아래와 같습니다.

1. EVT 3.0 ( .NET의 경우 4.x버전 대를 설치 하셔야합니다. )
2. Windows CE SDK( 버전별로 다양합니다)
3. SQLCE 2.0

그리 복잡하지 않은 순서인데.. 여러 게시판을 보니 이 순서를 지키지 않아 간혹
문제가 생기는 듯 하더군요.


SQLCE는 연동을 위해 MSSQL이 구동중인 DB Server에도 설치해 주어야 합니다.
역시 설치 순서가 있습니다.

1. MSSQL
2. MSSQL Server Pack 2
3. SQLCE 2.0
4. MSSQL Server Pack 3

위의 순서 역시 그리 복잡하지는 않지만,
위의 순서를 지키지 않으면 SQLCE가 설치조차 되질 않습니다.


--------------------------------------------------------------------
<덧글>

WinCE 개발 방법

WinCE기반에 개발 방법은 크게 두가지로 나누어 생각할 수 있습니다.
.NET기반의 프레임워크를 사용할 것이냐? 사용하지 않을것이냐? 가 그것인데
먼저 .NET기반의 프레임 워크를 사용하려면 기존에는 Smart Device Extensions을
설치해야 했지만, 이번에 출시된 Visual Studio .NET 2003을 이용할 경우 그 툴 하나로
컴팩트프레임워크(Compact Framework:WinCE기반의 .NET 프레임워크)기반의 프로그램을
개발 할 수 있습니다.

VS .NET 2003을 이용할경우(CF기반으로 개발할 경우)는 언어의 제약이 없어집니다.
C#.NET, VB.NET, VC.NET등 기존의 .NET 기반 코드를 거의 수정없이 사용 할 수 있습니다.
기존 코드를 재사용 할 수 있다는 장점과, CF기반이라는 장점의 두마리 토끼를 잡으므로
개발기간 단축이라는 부가 장점까지 갖게됩니다.

하지만 단점도 있는데, 사양이 일반 데스크탑보다 월등히 낮은 성능의 PDA 위에
CF를 올려두고, 그위에 개발자가 Application을 개발하여 올려 놓다보니
성능저하가 있을 수 밖에 없습니다.

CF기반으로 개발은 WindowsCE 3.0이상으면 가능 한 것으로 알고 있습니다.
제가 테스트해본건 PocketPC 2002이 였는데 정상적으로 돌아가더군요

참고로 VS .NET 2003을 이용할 경우 CF를 포함한 설치파일(setup.exe)까지
만들어 지더군요. 인스톨 쉴드가 필요 없습니다.

CF기반으로 개발 하지 않을 경우는 EVT를 사용해야 합니다.
WinCE 3.0, PPC2002이하는 EVT 3.0을 통해..
WinCE .NET는 EVT 4.0을 통해 개발 할 수 있습니다.
기존에 PDA용 Application을 개발해 오던 방법이죠

이렇게 개발한 Application을 설치파일을 만들려면 인스톨쉴드 7.0 프로페셔날 이상이나
ActiveSync를 설치하면 생기는 인스톨 위져드를 사용하는 방법이 있습니다.

인스톨 위져드를 사용하는 방법은
http://groups.msn.com/CEFAN

공개강좌/포켓겔러리 를 참조하시면 자세히 나와 있습니다.

이번 강좌는 후자의 방법으로 PPC2002위에 EVC 3.0중심으로 해 나가겠습니다.

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

이상으로 첫번째 강좌를 마칩니다.
어럽지 않은 내용인데 꽤나 시간이 걸리네요.

다음은 SQLCE와 MSSQL의 연동 아키덱쳐인 MR과 RDA에 대해 알아 보겠습니다.