tôi có một ứng dụng máy tính để bàn nói chuyện với máy chủ. kết nối rất chậm vì vậy tôi muốn tải xuống trước rất nhiều dữ liệu và truy vấn từ cơ sở dữ liệu cục bộ của mình. Tôi muốn dữ liệu cục bộ này vẫn tồn tại sau khi ứng dụng tắt, vậy cách tốt nhất để thực hiện việc này là gì. . . có bất kỳ sản phẩm / ví dụ tốt nào để làm điều này. . có khoảng 25 bảng mà tôi đang lưu vào bộ nhớ đệm.

SQLite là hoàn hảo cho việc này. Cách đây vài năm, tôi đã viết một ứng dụng "ứng dụng khách thông minh" trong đó tôi duy trì bộ nhớ cache cục bộ để người dùng vẫn có thể sử dụng ứng dụng ngoại tuyến. Tôi đã sử dụng SQLite và không gặp vấn đề gì, nó rất nhỏ, tồn tại nhanh chóng và hầu hết các ORM hiện đại đều hỗ trợ nó. (Tôi đã sử dụng NHibernate)

Berkeley DB là một DB độc lập, tốt. Bạn cũng nên xem xét ESENT , được tích hợp sẵn trong các cửa sổ. Đây là một bài viết của Ayende.

Cơ sở dữ liệu H2 cũng có thể đáp ứng nhu cầu của bạn. Microsoft cung cấp phiên bản nhỏ gọn của SQL Server: SQL Server Mobile Edition . Nếu SQL Server và TSQL là thứ của bạn, thì đây có thể là một lựa chọn tốt.

Bạn luôn có thể sử dụng Access DB, thường khá đơn giản để nhập với ứng dụng .NET và không yêu cầu bất kỳ máy chủ nào phải được cài đặt hoặc định cấu hình trên máy khách.

Hãy cân nhắc sử dụng Firebird, tôi tin rằng chúng cũng có phần mở rộng ADO.NET.

Tôi sẽ xem xét SQL Server Express hoặc thậm chí SQL Server Compact Edition, hoạt động trên các tệp cơ sở dữ liệu riêng lẻ, giống như Access. Mặc dù vậy, nó vẫn là SQL Server.

Bạn cũng có thể xem xét Apache Derby , được sử dụng trong máy chủ Glassfish Java EE của Sun.

Có thể bạn quan tâm
