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

Tôi nên sử dụng những gì thay vì trình tự để tránh khoảng trống?

Mục đích chính của chuỗi là cung cấp nguồn được đảm bảo số nhận dạng duy nhất. Đây là các khóa kỹ thuật và nói chung giá trị thực của chúng không liên quan. Ý tôi là - bạn có cần hiển thị số thư mục cho người dùng không?

Nếu bạn thấy phiền, hãy sử dụng NOCACHE. Điều đó sẽ giảm thiểu khoảng trống mà bạn đang nhìn thấy và miễn là bạn không tạo thư mục thường xuyên, bạn sẽ không nhận thấy hiệu suất bị ảnh hưởng do không lưu vào bộ nhớ đệm một số ít các con số. Bạn vẫn có thể nhận được khoảng trống, nếu một giao dịch bị lùi lại hoặc không thành công vì bất kỳ lý do nào khác nhưng chúng sẽ không thường xuyên; nếu chúng không phải là bạn, bạn có những điều lớn hơn phải lo lắng ngoài việc đánh số các thư mục của bạn!

Các cách khác để tạo chuỗi tăng dần đơn điệu hoặc là khó triển khai (kích hoạt trên bảng điều khiển mã) hoặc không được đảm bảo là duy nhất (sử dụng max(id)+1 trong một trình kích hoạt). Nếu bạn muốn sử dụng bảng điều khiển mã - đó là bảng theo dõi cụ thể ID thư mục được chỉ định cuối cùng - bạn nên xem ở một câu trả lời trước đó tôi đã viết mà nên làm như thế nào để thực hiện một. Một ưu điểm của bảng điều khiển mã là chúng ta có thể duy trì số lượng với một nhóm. Vì vậy, bạn có thể có một loạt id thư mục cho từng người dùng và tăng chúng một cách độc lập.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. điều gì xảy ra trong giai đoạn chuyển tiếp của việc áp dụng trong R12.2

  2. Liệt kê bảng và các cột trong một câu lệnh

  3. Làm cách nào để lấy delta cho user_id từ những tháng trước bằng cách sử dụng oracle sql

  4. Lỗi thời gian chạy không xác định trong khi thực thi tập lệnh vba

  5. Lỗi (5,3):PLS-00103:Gặp phải biểu tượng BEGIN khi mong đợi một trong những điều sau:ngôn ngữ