2009-06-19 41 views
10

Tôi hiện đang thiết kế một ứng dụng nhỏ trong .Net và trong quá khứ tôi đã sử dụng MSAccess làm cơ sở dữ liệu độc lập mà tôi có thể gửi cùng với chương trình. Nhưng tôi đã tự hỏi liệu trong ngày và tuổi này không có giải pháp thay thế, dễ dàng tích hợp trong ứng dụng .Net, minh bạch cho người dùng và có thể thực hiện tốt hơn với lượng lớn dữ liệu?cơ sở dữ liệu độc lập

Trả lời

20

lựa chọn của bạn là:

  • Sqlite
  • Firebird
  • Sql Server CE - depricated , phiên bản mới nhất, 4.0 SP1 đã được phát hành vào ngày 31/8/2012
  • VistaDB - thương mại
  • ESE - Đó là khó có thể tích hợp với Net

SQL CE và Firebird là nhanh hơn rất nhiều khi bạn cần ghi đa luồng, SQLite là thượng đế để truy cập ren duy nhất, hoặc đa luồng đọc. VistaDb được quản lý 100% để bạn có thể gửi nó trên các thiết bị nhúng.

Các DB này nói chung sẽ cung cấp cho bạn độ tin cậy và hiệu suất cao hơn để truy cập. Tôi sẽ khuyên bạn nên chống lại bằng cách sử dụng bất kỳ của các dbs trên một mạng chia sẻ.

+0

Đối với Firebird bạn có thể xem tại đây: http: // www.firebirdnews.org/docs/fb2min.html –

+0

ESE không khó để intagrate với .NET nữa ... Bạn có thể sử dụng ESENT Managed Interop http://www.codeplex.com/ManagedEsent – spinodal

+0

managed ese net vẫn còn khá phức tạp để tiêu thụ so với các dbs nhúng khác, nó có một lợi thế lớn mà nó tàu với các cửa sổ. –

1

SQLite dường như phù hợp với nhu cầu của bạn - xem here để biết thêm.

2

Có. Tôi muốn giới thiệu System.Data.SQLite, mà là một wrapper ADO.NET xung quanh SQLite, một cơ sở dữ liệu nhúng phổ biến được viết bằng C.

1

Luôn luôn có SQL Server CE... nhưng tôi đã tìm thấy SQLite là dễ dàng hơn để làm việc với, đặc biệt là với System.Data.Sqlite

Các vấn đề liên quan