2011-12-21 6 views
0

현재 어떤 임베디드 데이터베이스가 새로운 .NET 프로젝트를 선택할지 결정하려고합니다. SQLite와 SQL CE의 2 가지 후보가 있습니다.임베디드 데이터베이스 : SQLite 또는 SQL CE?

첫 번째 장소에 성능을 넣었습니다. 그러나 Dapper-dot-net 또는 Simple.Data와 같은 microORM 도구가 지원되는지 여부도 중요합니다.

두 가지 방법을 시도해 본 결과 의견이 있으시면 기쁩니다.

+0

또는 아마도 : http://stackoverflow.com/questions/4839342/sql-server-compact-4-0-vs-sqlite –

답변

1

.NET에서 SQL CE에 대한 유일한 이점은 설계자가이를 통합 할 수 있다는 것입니다.

반면에 속도, SQL 표준 준수 및 메모리 사용과 관련하여 SQLite를 사용하는 것이 좋습니다.

틀린 말은하지 마라. 나는 SQL CE가 멋진 데이터베이스라고 믿는다. 그러나 SQLite가 하나의 DLL 파일로 컴파일되고 .Net 제품에서 사용될 수 있다는 것을 명심해야한다.

+0

사실 SQLite는 VS2008에서 쿼리 디자이너를 지원합니다. http://sqlite.phxsoftware.com/readme.htm – jklemmack

+0

// 속도와 관련하여 SQL 표준 준수 ..., SQLite.// 참조를 사용하는 것이 좋습니다. – nawfal

2

필자는 *를 모두 사용했으며 "성능"이 가장 중요한 문제라고 말하면 좀 더 구체적이어야합니다.

예를 들어 SQLite에서 많은 삽입/업데이트를 실행하는 것은 단일 트랜잭션에서 모든 것을 랩핑하고 끝에 커밋하지 않는 한 상당히 느립니다. SQL CE의 쿼리 구문은 다소 단순합니다. 즉, 여러 명령을 실행하고 코드에서 데이터를 병합/조작해야했습니다.

"성능"(지연, 쿼리/초, 행/초, 코드 또는 DB 크기)을위한 다양한 사용 사례가 주어지면 하네스를 연결하고 실습 테스트를 수행하는 것이 좋습니다. 우리의 비교에서 우리는 같은 것을했지만, 결국에는 SQLite 콜백을 사용하여 조작을 더 잘 수행했습니다.

SQL CE 3.5 및 SQLite.Net이므로 최신 버전을 사용하지 않았거나 프록시 오버 헤드를 추가하는 프록시 래퍼를 사용하고있었습니다.

관련 문제