문제

C#.Net 내에서 SQLite를 사용하고 싶지만 적절한 라이브러리를 찾을 수 없는 것 같습니다.하나 있나요?공식적인 것?래퍼를 사용하는 것 외에 SQLite를 사용하는 다른 방법이 있습니까?

도움이 되었습니까?

해결책

에서 https://system.data.sqlite.org:

System.Data.SQLite는 SQLite용 ADO.NET 어댑터입니다.

System.Data.SQLite는 Robert Simpson에 의해 시작되었습니다.Robert는 여전히 이 저장소에 대한 커밋 권한을 갖고 있지만 더 이상 활성 기여자가 아닙니다.개발 및 유지 관리 작업은 이제 대부분 SQLite 개발 팀에서 수행됩니다.SQLite 팀은 System.Data.SQLite를 장기적으로 지원하기 위해 최선을 다하고 있습니다.

"System.Data.SQLite는 원래의 SQLite 데이터베이스 엔진이자 완전한 ADO.NET 2.0 공급자로서 모두 단일 혼합 모드 어셈블리로 통합되었습니다.이는 원래 sqlite3.dll을 완전히 대체하는 것입니다(이름을 sqlite3.dll로 바꿀 수도 있음).일반적인 혼합 어셈블리와 달리 .NET 런타임에 대한 링커 종속성이 없으므로 .NET과 독립적으로 배포될 수 있습니다."

모노도 지원합니다.

다른 팁

내가 찾을 수 있는 것은 다음과 같습니다.

출처:

이제 다음 옵션도 있습니다. http://code.google.com/p/csharp-sqlite/ - SQLite를 C#으로 완전히 이식합니다.

sqlite.org의 사람들이 ADO.NET 공급자의 개발을 맡았습니다.

에서 그들의 홈페이지:

이것은 system.data.sqlite로 알려진 sqlite에 대한 인기있는 ado.net 4.0 어댑터의 포크입니다.System.data.sqlite의 창시자 인 Robert Simpson 은이 포크를 알고 있으며 그의 승인을 표명했으며 새로운 화석 저장소에 대한 특권을 지니고 있습니다.SQLITE Development 팀은 System.data.sqlite를 유지하려고합니다.

원래 지원 포럼뿐만 아니라 역사적 버전은 여전히 http://sqlite.phxsoftware.com, 2010 년 4 월 이후이 버전에 대한 업데이트는 없었습니다.

전체 기능 목록은 다음에서 확인할 수 있습니다. 그들의 위키에서.하이라이트는 다음과 같습니다

  • ADO.NET 2.0 지원
  • 전체 엔터티 프레임워크 지원
  • 전체 모노 지원
  • Visual Studio 2005/2008 디자인 타임 지원
  • 컴팩트 프레임워크, C/C++ 지원

릴리스된 DLL은 다음에서 직접 다운로드할 수 있습니다. 사이트.

난 꼭 같이 갈 거야 시스템.데이터.SQLite (앞서 언급했듯이: http://sqlite.phxsoftware.com/)

ADO.NET(System.Data.*)과 일관성이 있으며 단일 DLL로 컴파일됩니다.sqlite3.dll이 없습니다. SQLite의 C 코드가 System.Data.SQLite.dll에 내장되어 있기 때문입니다.약간의 관리형 C++ 마법입니다.

sqlite-net .NET 및 Mono 애플리케이션이 데이터를 저장할 수 있는 오픈 소스, 최소 라이브러리입니다. SQLite 3 데이터베이스.자세한 내용은 위키 페이지.

C#으로 작성되었으며 프로젝트와 함께 간단히 컴파일할 수 있습니다.처음에는 iPhone의 MonoTouch와 함께 작동하도록 설계되었으나 모든 플랫폼(Android용 Mono, .NET, Silverlight, WP7, WinRT, Azure 등)에서 작동하도록 성장했습니다.

그것은로 사용할 수 있습니다 너겟 패키지, 2014년 현재 60,000회 이상의 다운로드를 기록한 두 번째로 인기 있는 SQLite 패키지입니다.

sqlite-net은 빠르고 편리한 데이터베이스 계층으로 설계되었습니다.그 디자인은 다음과 같은 목표를 따릅니다.

  • 기존 프로젝트 및 MonoTouch 프로젝트와 통합하기가 매우 쉽습니다.
  • SQLite에 대한 얇은 래퍼이며 빠르고 효율적이어야 합니다.(라이브러리는 쿼리의 성능 병목 현상이 되어서는 안 됩니다.)
  • CRUD 작업 및 쿼리를 안전하게 실행하고(매개 변수 사용) 강력한 형식의 방식으로 쿼리 결과를 검색하는 매우 간단한 방법입니다.
  • 클래스를 변경하지 않고도 데이터 모델을 사용하여 작업할 수 있습니다.(작은 반사 기반 ORM 레이어가 포함되어 있습니다.)
  • sqlite2 라이브러리의 컴파일된 형식을 제외하면 종속성이 없습니다.

비목표에는 다음이 포함됩니다.

  • 아니다 ADO.NET 구현.이것은 완전한 SQLite 드라이버가 아닙니다.필요한 경우 System.Data.SQLite를 사용하세요.

모노에는 포장지가 함께 제공됩니다. https://github.com/mono/mono/tree/master/mcs/class/Mono.Data.Sqlite/Mono.Data.Sqlite_2.0 실제 SQLite dll을 래핑하는 코드를 제공합니다( http://www.sqlite.org/sqlite-shell-win32-x86-3071300.zip 다운로드 페이지에서 찾았습니다 http://www.sqlite.org/download.html/ ) .net 친화적인 방식으로.Linux나 Windows에서 작동합니다.

이는 타사 라이브러리에 대한 의존도를 최소화하는 모든 세계 중에서 가장 얇은 것 같습니다.만약 제가 이 프로젝트를 처음부터 해야 한다면 저는 이렇게 할 것입니다.

Microsoft.Data.Sqlite

Microsoft는 이제 다음을 제공합니다. Microsoft.Data.Sqlite ASP.NET Core의 일부로 제공되는 .NET용 자사 SQLite 솔루션입니다.라이센스는 Apache 라이센스, 버전 2.0.

* 부인 성명:아직 직접 사용해 본 적은 없지만 Microsoft Docs에 제공되는 몇 가지 문서가 있습니다. 여기 .NET Core 및 UWP와 함께 사용하기 위한 것입니다.

나와 같이 ADO.NET이 필요하지 않거나 원하지 않는 사람들, SQLite에 더 가까운 코드를 실행해야 하지만 여전히 SQLite와 호환되는 사람들을 위해 netstandard (.net 프레임워크, .net 코어 등)이라는 100% 무료 오픈 소스 프로젝트를 구축했습니다. SQL나도 ("ADO 아님"의 경우) 여기 github에서 사용할 수 있습니다.

https://github.com/smourier/SQLNado

여기서는 너겟으로 사용 가능합니다 https://www.nuget.org/packages/SqlNado 단일 .cs 파일로도 사용할 수 있으므로 모든 C# 프로젝트 유형에서 사용하는 것이 매우 실용적입니다.

SQL 명령을 사용할 때 모든 SQLite 기능을 지원하고 .NET을 통해 대부분의 SQLite 기능도 지원합니다.

  • 자동 클래스-테이블 매핑(저장, 삭제, 로드, LoadAll, LoadByPrimaryKey, LoadByForeignKey 등)
  • 클래스와 기존 테이블 간의 스키마(테이블, 열) 자동 동기화
  • 스레드로부터 안전한 작업을 위해 설계됨
  • Where 및 OrderBy LINQ/IQueryable .NET 표현식이 지원됩니다(이 영역에서는 작업이 아직 진행 중입니다). 또한 데이터 정렬도 지원됩니다.
  • .NET에 노출된 SQLite 데이터베이스 스키마(테이블, 열 등)
  • SQLite 사용자 정의 함수는 .NET으로 작성할 수 있습니다.
  • SQLite 증분 BLOB I/O는 높은 메모리 소비를 방지하기 위해 .NET 스트림으로 노출됩니다.
  • .NET 코드를 사용하여 사용자 정의 데이터 정렬을 추가할 수 있는 가능성을 포함한 SQLite 데이터 정렬 지원
  • .NET 코드(예: 현지화된 중지 단어)를 사용하여 사용자 정의 FTS3 토크나이저를 추가할 수 있는 가능성을 포함한 SQLite 전체 텍스트 검색 엔진(FTS3) 지원.다른 .NET 래퍼에서는 그렇게 할 수 없다고 생각합니다.
  • Windows 'winsqlite3.dll'(최신 Windows 버전에만 해당)에 대한 자동 지원 바이너리 종속성을 배송하지 마십시오. 파일.이는 Azure 웹 앱에서도 작동합니다!.

Monotouch 버전 1.2에는 System.Data에 대한 지원이 포함되어 있습니다.자세한 내용은 여기에서 확인할 수 있습니다.http://monotouch.net/Documentation/System.Data

그러나 기본적으로 sqlite에서 일반적인 ADO .NET 패턴을 사용할 수 있습니다.

http://www.devart.com/dotconnect/sqlite/

dotConnect for SQLite는 ADO.NET 기술을 기반으로 구축되어 SQLite 기반 데이터베이스 애플리케이션 개발을 위한 완벽한 솔루션을 제공하는 향상된 SQLite용 데이터 공급자입니다.Devart 데이터베이스 애플리케이션 개발 프레임워크의 일부인 dotConnect for SQLite는 SQLite 데이터베이스에 대한 고성능 기본 연결과 다양한 혁신적인 개발 도구 및 기술을 모두 제공합니다.

SQLite용 dotConnect는 애플리케이션 아키텍처 설계를 위한 새로운 접근 방식을 도입하고 생산성을 높이며 데이터베이스 애플리케이션 구현을 활용합니다.

나는 표준 버전을 사용하는데 완벽하게 작동합니다 :)

sqlite 라이브러리에서 제공하는 함수의 기본 래퍼입니다.최신 버전에서는 sqlite 라이브러리 3.7.10에서 제공하는 기능을 지원합니다.

SQLiteWrapper 프로젝트

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top