Lưu trữ giá trong SQLite, loại dữ liệu nào sẽ sử dụng?


15

Tôi đang sử dụng SQLite và cần lưu trữ giá. REALKiểu dữ liệu của SQLite cho biết nó sử dụng bộ lưu trữ khôngfloating-point được chấp nhận cho giá cả. Có kiểu dữ liệu nào ngoài văn bản mà tôi có thể sử dụng để lưu trữ giá theo số để chúng sắp xếp chính xác không?

Câu trả lời:


25

Sử dụng một số nguyên và lưu trữ giá dưới dạng đơn vị phổ biến thấp nhất. Vì vậy, đối với đô la và xu bạn sẽ lưu trữ nó bằng xu. EG: $ 1 sẽ được lưu trữ là 100.

Theo kinh nghiệm của tôi, đó là thực hành tiêu chuẩn.


3
Đó là công việc làm thêm nhưng đây là cách để thực hiện - bạn cũng cần một trường loại tiền tệ để lưu trữ với giá trị để bạn biết cách chuyển đổi trở lại. Bạn cũng cần chú ý - hầu hết các loại tiền tệ sử dụng 2 chữ số thập phân, nhưng một số loại sử dụng ba. Kiểm tra ISO 4127 để biết danh sách đầy đủ.
lonstar

CLF Chile Unidad de Fomento sử dụng 4 chữ số thập phân. Bitcoin thậm chí nhiều hơn :-)
Gianluca Ghettini

4

Chắc chắn, sử dụng số nguyên

Bạn sẽ phải quyết định có bao nhiêu vị trí thập phân mà bạn đang giả định và nhất quán ở cấp ứng dụng.

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.