2009-06-09 10 views
3

처음 엔 C#으로 놀고있어 데이터베이스 구조에 정보를 저장하는 Windows Forms 애플리케이션을 만들고 싶지만 분명히 비슷한 것을 원하고 싶지는 않습니다. MySQL은 각 클라이언트의 컴퓨터에 설치됩니다. 어떻게해야합니까?C#의 서버리스 데이터베이스

답변

8

설치가 필요없는 데이터베이스를 사용합니다. 거기에는 몇 가지가 있습니다 - Microsoft SQL Server Compact입니다. 솔직히 말해서 저장 프로 시저, 뷰 등의보다 유용한 SQL 함수를 지원하지 않으므로 솔직히 이름이 잘못되었습니다. VistaDB도 저장 프로 시저를 지원하지만 Visual Studio 플러그인을 원한다면 구매가 필요합니다.

27

당신은 SQLite는를 사용할 수 있습니다. 클라이언트 컴퓨터에 설치 또는 서버가 필요하지 않습니다. .NET과 함께 사용하는 방법을 설명하는 blog입니다. 사용하기 쉽습니다. System.Data.SQLite.dll에 대한 참조를 추가하기 만하면됩니다. System.Data.SQLite

homepage에서 : 여기

는 .NET를위한 오픈 소스 데이터 제공 업체입니다. "SQLite는이 자체 포함, 서버없는, 제로 구성, 트랜잭션 SQL 데이터베이스 엔진을 구현하는 소프트웨어 라이브러리는 SQLite는이다 세계에서 가장 널리 배포 된 SQL 데이터베이스 엔진입니다 .SQLite의 소스 코드는 공개 도메인입니다. "

+3

SQLite를 충분히 추천 할 수 없습니다. – Galwegian

+1

+1 이것은 * 정확히 * 어떤 SQLite가 의미하는 것입니까 – annakata

+0

SQLite는 저의 경험에서 끔찍했습니다. 권장하지 않음 – Kousha

1

XML 파일에 데이터를 쓸 수도 있고 Sql Server Compact Edition을 볼 수도 있습니다.

개체를 사용하여 작업하고이 파일을 바이너리로 디스크에 직렬화/비 직렬화 할 수도 있습니다.

물론 저장소 유형은 저장할 데이터의 종류 (및 볼륨)에 따라 많이 달라집니다.

1

에게 .NET 3.5에서 작업을 쉽게 수행하는 방법은 이후 XML 파일에 데이터를 저장하고 Linq to XML을 사용하는 것입니다. 이렇게하면 실제로 응용 프로그램에 컴파일 된 데이터와 같은 SQL과 유사한 명령을 사용할 수 있으므로 완전한 IDE IntelliSense 지원 및 오류 검사를 얻을 수 있습니다.

4

대답은 임베디드 데이터베이스입니다.

상업 : 당신은 당신이 사용할 수있는 임베디드 데이터베이스의 매우 큰 목록있어

  1. VistaDB을 -이 데이터베이스 관리 C#으로 완전히 작성된 것입니다.

오픈 소스 :

  1. 파이어 버드 - .NET Driver
  2. SQLite는 - 그것은 비주얼 스튜디오 IDE에 직접 통합되어 있기 때문에 SQL 서버 콤팩트 될 것 .NET Driver
+0

재미있는 - 파이어 버드에 대해 몰랐다. – RichardOD

0

가장 쉬운 방법 (I 당신이 VS를 사용한다는 추측을 위험하게 만듭니다.) "로컬 데이터베이스"를 추가하고 테이블을 만들고 선택, 업데이트, 삽입 및 삭제 방법으로 테이블 어댑터를 만들어야합니다. 데이터베이스를 만드는 동안 당신은 당신의 데이터 집합 "DS"를 호출하는 경우) (당신은

DSTableAdapters 

네임 스페이스에서 테이블 어댑터 개체를 인스턴스화 할 수있을 것입니다, 및 사용 GetData의() 또는 데이터를 검색하고 삽입하는) (방법 채우기 , 업데이트() 및 삭제()를 클릭하여 관리하십시오.

0

VelocityDB은 서버리스 모드에서 작동하지만 서버가 필요할 때 서버와 결합 할 수도 있습니다. 여기에 언급 된 다른 모든 선택보다 대략적으로 더 우수합니다 (comparison here 참조). 거의 모든 .NET 데이터 구조를 지속적으로 사용할 수 있습니다. 전체 데이터베이스 엔진과 선택적 서버는 C# 코드를 사용하여 구현됩니다.