답변:
14/06/2016 Yep ... 아직도 upvotes를 받고 :-/
2014 년 3 월 17 일 나는 여전히 이것에 대한 공의를 받고 있습니다. 원래 답변 날짜를 염두에 두십시오. 나열된 세 가지 주요 항목이 여전히 실행 가능하지만 목록이 오래되는 경향이 있습니다. 나열되지 않은 추가 데이터베이스 기술이 있습니다.
즉시 인식 할 수있는 몇 가지 무료 옵션이 있습니다.
SQL Server Compact 다운로드는 코드에서 참조해야하는 ADO.NET 공급자와 함께 제공됩니다. SQLite 다운로드에는 없을 수 있으므로 여기 링크가 있습니다.
http://sqlite.phxsoftware.com/
세 가지 모두 SQL을 사용하지만 몇 가지 제한 사항이 있습니다. Management Studio는 Compact 및 LocalDB와 함께 작동하지만 SQLite에는 SQLite Administrator와 같은 다른 UI 도구가 필요합니다.
http://sqliteadmin.orbmu2k.de/
다음과 같은 NoSQL 대안이 있습니다.
개인적으로 다른 무료 옵션에 직면하여 MS Access를 사용하지 않을 것입니다. LocalDB, Compact 또는 SQLite에는 문제가 없습니다. 그들은 모두 작은 RAM에서 비교적 빠르게 실행되는 멋진 작은 데이터베이스입니다.
격리 된 저장소를 사용하도록 구축 된 Windows Phone 프로그래밍에 Sterling을 사용합니다. RavenDb에 대한 기사 만 보았지만 JSON 기반 문서 저장소 프레임 워크라고 말할 수 있습니다.
상황을 혼동하지 말고 (SQLite, SQL Server Express LocalDB 또는 SQL Server Compact Edition과 함께) 다른 내장 / 로컬 데이터베이스가 있으며 일부는 관계 지향적 인 객체 지향입니다.
이 모든 것이 무료 인 것은 아닙니다. SQL / LINQ / in-proc 지원은 모두 다릅니다. 이 목록은 호기심을위한 것입니다.
이제 Karvonite 도 있지만 코드 갤러리 링크가 끊어졌습니다. 다시 살아 나면 WP7 개발을 위해 이것 하나를 살펴볼 것입니다.
나는 SQLite를 추천합니다 합니다. 우리는 내가 일하는 곳에서 개발하는 거의 모든 앱에 사용하고 있습니다.
작고 컴팩트합니다. 앱 디렉토리에 DLL이 있어야하지만 Access 또는 SQL Server와 같은 다른 소프트웨어를 설치할 필요는 없습니다. 또한 아래의 danielkza가 언급 한 것처럼 "SQLite는 공개 도메인이므로 라이센스에 대해 전혀 걱정할 필요가 없습니다." 그것은 정말로 큰 차이를 만들 수 있습니다.
System.Data.SQLite 또는 csharp-sqlite를 사용할 수 있습니다 를 사용하여 SQL 또는 OleDB와 동일한 방법을 사용하여 C # 앱에서 액세스 할 .
데이터베이스를 편집 / 관리하는 응용 프로그램도 필요합니다. 내 생각에 가장 좋은 것은 SQLite Studio 입니다. 여기에 몇 가지 더있다 :
SQLite는 관리자
SQLite는 2009 프로 (페이지 하단)
업데이트 - 7/25/11 - 더 SQLite는 애플 리케이션 (여기에 SO에 대한 질문)
SQLite에 대한 추가 정보 :
Wikipedia의 SQLite
를 사용 회사의 SQLite
사용자 정의 함수 : 또한 SQLite 핵심 함수를 보고 원하는 기능 이 보이지 않으면 사용자 정의 함수를 만들 수 있습니다. 다음은 몇 가지 예입니다.
SO
Anoter 예제에서
Firebird 임베디드 는 좋은 선택이 될 수 있습니다
임베디드 버전은 서버의 놀라운 변형입니다. 단지 몇 개의 파일로 포장 된 완전한 기능을 갖춘 Firebird 서버입니다. 서버를 설치할 필요가 없으므로 배포가 매우 쉽습니다.
아주 좋은 닷넷 드라이버가 있습니다
공식 Microsoft 솔루션을 사용하려는 경우 SQL Server Compact 이렇게하면 SQL 서버에서 복제를 사용할 수 있다는 장점이 있습니다.
아주 간단한 작고 자유로운 것을 원한다면 SQLite. 이것은 안드로이드가 내부 데이터베이스에 사용하는 것이므로 매우 잘 지원되며 사용 가능한 .NET 바인딩이 매우 좋습니다.
SQLite의 또 다른 장점은 플랫폼 간입니다. 따라서 응용 프로그램을 Mono.NET으로 이식하려면 데이터베이스 구현을 수정하지 않아도됩니다.
나는이 솔루션에 대한 MS 액세스를 좋아하지 않지만 많은 사람들 이이 솔루션에 솔루션을 포함 시켰습니다. 독점 형식 및 플랫폼 의존성으로 인해 제한됩니다. 그래도 장점이 있습니다. MS Access 사본이 있으면 데이터를 쉽게 조작 할 수 있으며 그래픽으로 쿼리를 작성하고 매크로를 작성할 수 있습니다. 다른 MS Office와 쉽게 통합 할 수 있습니다.
이 모든 SQLite 중에서 플랫폼에 관계없이 점점 더 많은 동료 개발자가 지원하는 컴팩트하고 문서화되어 있기 때문에 내 추천이 될 것입니다.
편집하다
나는 여기의 모든 사람들이 언급하는 것을 잊어 버린 다른 옵션이 있다는 것을 깨달았습니다.
관계형 테이블이 필요하지 않으면 ADO.NET을 통해 CSV 파일을 데이터 집합으로 사용할 수 있습니다. (다른 것보다 lulz 제안이 많지만 경우에 적합하며 MS 배포를 위해 추가 라이브러리가 필요하지 않습니다.
.NET 4.0.2 이상으로 프로젝트를 빌드하고 내장 데이터베이스 지원을 원하는 경우 SQL Server Express LocalDB를 고려하십시오. .
Express 제품군에 상대적으로 새로 추가 된 제품으로 설치 공간이 작고 관리 오버 헤드가 줄어들지 만 (다른 Express 버전과 비교할 때) SQL Server의 프로그래밍 기능 측면을 유지합니다. 즉, Compact Edition과 달리 LocalDB는 SQL과 통신하기 위해 별도의 ADO.NET 공급자를 설치할 필요가 없습니다.
자세한 내용은 다음을 참조하십시오.
SQL Express v LocalDB v SQL Compact Edition (MSDN 블로그)
SQL LocalDB 및 SQL Server CE (스택 오버 플로우)
대해 ) http://en.wikipedia.org/wiki/NoSQL_(RDBMS ?
특히 MongoDB for .Net
나는 db4o를 성공적으로 사용했다.
사용하기 쉬운 파일 기반의 대규모 커뮤니티.
라이센스 세부 사항
Free General Public License db4o는 기본적으로 GPL에 따라 라이센스가 부여됩니다.
GPL 라이센스는 db4o를 사내에서 사용하거나 GPL에 따라 자유 소프트웨어로 자체 파생 작업을 개발 및 배포하려는 경우에 이상적입니다.
상용 라이센스 상용 GPL이 아닌 제품에 db4o를 임베드하려면 상용 라이센스가 필요합니다. 상용 라이센스 사용자는 프리미엄 서비스 및 지원에 액세스 할 수 있습니다.
무료 데이터베이스가 필요하지 않은 경우 언급되지 않은 대안은 VistaDB입니다. 모두 관리되는 코드이며 내장 데이터베이스에 대한 수많은 기능을 제공하며 성능이 매우 뛰어납니다. 대부분의 VistaDB 저장 프로시 저는 SQL Server Express에서 수정하지 않고 실행되므로 SQL CE와 SQL Server Express 사이의 아주 좋은 다리입니다. 이 시점에서도 고객 서비스에 매우 만족했습니다. 나는 직장에서 그것을 사용하고 있습니다. 시작할 서비스가 없습니다. 빈 DB는 약 1MB이며 DLL도 매우 가볍습니다. ADO.NET 공급자와 그와 같은 것들이 있습니다. 나는 그것을 조금 좋아했다.