문제

새로운 웹 응용 프로그램을 시작했습니다. SQL Server에 대한 추가 비용을 청구하는 서비스에서 호스팅 될 예정이며 솔직히 사이트에 데이터베이스가 많이 필요하다고 생각하지 않습니다. 현재 데이터 모델은 5 개의 테이블입니다. 그리고 가장 큰 테이블이 10K 레코드로 가면 놀랄 것입니다.

그래서 DB를 가볍게 유지하고 싶습니다. sqlite 안드로이드를 위해 배워야하기 때문에 원래 관심을 끌었습니다. 하지만 외국 열쇠 부족 나를 울부 짖습니다. 물론 외국의 주요 제약처럼 보이는 것을 구현할 수는 있지만 관계가없는 느낌이 들었습니다. 파이어 버드 FKS를 지원하는 유일한 가벼운 (및 무료) DB처럼 보입니다.

또한이 프로젝트를 통해 LINQ에서 발을 적시고 싶습니다. 지금까지 나는 단지 발견했다 dblinq 이를 통해 LINQ와 함께 SQLITE 또는 FIREBIRD를 사용할 수 있습니다. 현재 V0.18이므로 프라임 타임과는 거리가 멀다. DBLINQ로 SQLITE 테스트를 실행하고 필요한 것을 통과합니다.

SQLITE 용 LINQ의 다른 구현이 하나 있었지만 내가 찾은 모든 링크는 404S로 끝납니다.

그렇다면 LINQ와 호환되는 경량 데이터베이스에 대한 내 옵션은 무엇입니까? Xcopy가 배포 할 수있는 것이 아니라면 SQL Server의 컴팩트 한 에디션이 나옵니다. 에이전트/서비스가 설치되지 않았습니다? 호스트에게 새 소프트웨어를 설치 해달라고 요청할 수는 없으며, 그들이 할 것이라고 의심하고 앱이 휴대용 (호스팅과 관련하여)을 매우 휴대하기를 원합니다.

지금까지 목록 :

  • sqlite
  • 파이어 버드
  • SQL Server Compact
  • vistadb

업데이트: 나는 모든 버전을 시험해 보았습니다 여기에 나의 인상을 썼습니다. 짧은 버전 : sqlite가 손을 내립니다. 그것은 좋은 GUI를 가진 유일한 사람이며, 설치 발자국이없고 무료입니다.

도움이 되었습니까?

해결책 4

sqlite. 좋은 GUI가 있으며 (자동 프레킨-완성되지 않음) 설치 발자국이 없으며 무료이며 웹 사이트를 호스팅하는 위치에 관계없이 작동합니다. 나는 내 자신의 질문에 대답하고 있다는 것을 알고 있지만 다른 사람은 SQLITE를 그들의 대답에 넣지 않았습니다.

중요한: SQLITE에는 공유 호스팅에서 실행하려면 풀 트러스트 모드를 사용하는 웹 호스트가 필요합니다.

다른 팁

기존 데이터베이스와 같이 LINQ에서 SQL을 사용할 수 있습니다. IDbConnection 물체.

다음은 Firebird DB에서 LINQ를 사용하는 코드입니다.

DbProviderFactory dbProvider = DbProviderFactories
    .GetFactory("FirebirdSql.Data.FirebirdClient");

DbConnection connection = dbProvider.CreateConnection();
connection.ConnectionString = "some connection string";

DataContext linqContext = new DataContext(connection);

var query = from something in linqContext.GetTable<SomeType>() 
            select something.someproperty;

SQL Server Compact Edition (http://en.wikipedia.org/wiki/sqlce)는 LINQ를 지원하고 기타 모든 대 도구가 vs 2008에 내장되어 있으며 FKS를 지원하며 데이터베이스의 플랫 파일로 XCopy를 배포 할 수 있습니다. 그러나 경고가 없다는 경고를 받고, 뷰 나 중첩 쿼리와 같은 많은 것들이 넘어지고, 데이터베이스 크기를 상당히 크게 높이기 시작하면 (예 : 50MB+) 꽤 팽팽해질 수 있습니다.

sqlite도 있습니다 많이 여기에서 sqlite .net 공급자를 사용하는 경우 더 좋습니다 (여기에서http://sqlite.phxsoftware.com/), LINQ 와도 작동하며 기본 대 지원이 있습니다.

나는 당신이 보는 것을 제안합니다 vistadb. 할거야 정확히 당신이 찾고있는 것 SQLCE 및 SQLITE에 대한 추가 혜택으로 뷰, 저장 절차 및 트리거를 지원합니다. 사실 그것은 TSQL과 .NET의 절차 및 트리거 작성을 지원하므로 SQL 서버 및 .NET 지식을 활용할 수 있습니다.

SQL Server Express

VistADB는 공유 호스팅에서 웹 사이트를 실행하려는 유일한 대안입니다 (거의 모든 신뢰 모드에서 웹 사이트를 운영 할 수는 없음) 및 간단한 X-Copy 배포 활성화 웹 사이트가 필요한 경우.

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