Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Làm thế nào để triển khai ID thân thiện với người dùng, không có khe hở trong NHibernate?

Một tùy chọn sẽ là giữ một bảng khóa chỉ lưu trữ một giá trị tăng dần. Điều này có thể gây ra một số vấn đề, cụ thể là các vấn đề khóa có thể xảy ra cũng như các lần truy cập bổ sung vào cơ sở dữ liệu.

Một tùy chọn khác có thể là tinh chỉnh ý của bạn bằng "Id thân thiện với người dùng". Điều này có thể bao gồm sự kết hợp của Ngày / Giờ và trình tự dành riêng cho khách hàng (hoặc bao gồm cả id khách hàng). Ngoài ra, id đơn hàng của bạn không nhất thiết phải là khóa thực trên bàn. Không có gì để nói rằng bạn không thể sử dụng khóa thay thế với một cột "được tính toán" riêng biệt đại diện cho id đơn hàng.

Điểm mấu chốt là có vẻ như bạn muốn sử dụng khóa thay thế, nhưng có những lợi ích của khóa tự nhiên. Có thể rất khó để thực hiện theo cả hai cách và phần lớn phụ thuộc vào cách bạn thực sự lập kế hoạch sử dụng dữ liệu, cách người dùng diễn giải dữ liệu và sở thích cá nhân.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bỏ qua biến thay thế khi điều kiện không được thỏa mãn

  2. Hiển thị chuỗi từ raise_application_error trong chương trình java

  3. Cách truy vấn cột CLOB trong Oracle

  4. Hàm EXP () trong Oracle

  5. Sự khác biệt giữa USER () và SYS_CONTEXT ('USERENV', 'CURRENT_USER') là gì?