Nơi lưu trữ tệp cơ sở dữ liệu SQLite?


8

Tôi đang viết một ứng dụng để học các từ nước ngoài của chính xác một ngôn ngữ (tiếng Anh tại thời điểm này), hiện đang là một thiết kế không hiệu quả.

Tôi sử dụng Java và SQLite-jdbc để lưu các từ. Sau khi bắt đầu, ứng dụng tải xuống một danh sách từ được phân tách bằng dấu phẩy và chèn từng cặp giá trị vào Cơ sở dữ liệu. Tôi đã lưu trữ danh sách từ trên một kho lưu trữ github bổ sung, vì tôi nghĩ rằng tôi không nên lưu trữ tệp cơ sở dữ liệu bên trong kho phát triển git - nhị phân của nó, vì vậy mỗi khi tôi làm việc với cơ sở dữ liệu, hàm băm của tệp cơ sở dữ liệu sẽ thay đổi. Tôi không thích điều đó, vì sau đó Id phải tạo các thông điệp cam kết không thể đọc được và sự thay đổi thực sự đối với cơ sở dữ liệu sẽ khó hiểu.

Do đó, câu hỏi thực tế của tôi: Có một giải pháp lưu tệp DB nào thanh lịch hơn là lưu nó trong git repo không? Tôi có nên đơn giản lưu trữ tệp cơ sở dữ liệu hiện tại trên một filehost khác không? Các thực hành tốt nhất cho một tình huống như vậy là gì?

Câu trả lời:


20

Lưu trữ các từ bằng cách sử dụng định dạng văn bản và xây dựng cơ sở dữ liệu trong quá trình xây dựng.

Thay vì lưu trữ thông tin ở định dạng nhị phân và lưu trữ tệp nhị phân trong kiểm soát phiên bản, hãy giữ các cặp trong tệp CSV. Điều này cho phép bạn dễ dàng thay đổi nó, cam kết các thay đổi và sau đó, diffcác thay đổi một cách dễ dàng.

Sau này, khi bạn thực sự cần dữ liệu này trong cơ sở dữ liệu, hãy chèn số lượng lớn từ tệp CSV. Điều này có thể được thực hiện trong quá trình xây dựng hoặc triển khai. Nhân tiện, SQLite có một tính năng giúp nhập dữ liệu từ các tệp CSV có thể (và quan trọng hơn là nhanh).

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.