Chúng tôi đang trong quá trình chuyển từ trình tạo hướng dẫn ngẫu nhiên C# Guid.NewGuid() ngẫu nhiên thành thuật toán guid tuần tự được đề xuất trong this post. Trong khi điều này dường như làm việc tốt cho MS SQL Server, tôi không chắc chắn về các hàm ý cho cơ sở dữ liệu Oracle, trong đó chúng ta lưu trữ các guids trong một trường thô (16). Có ai có bất kỳ cái nhìn sâu sắc về việc liệu thuật toán này sẽ là tốt cho việc tạo ra tuần tự guids cho Oracle cũng như cho MS SQL Server, hoặc nếu một biến thể khác nhau nên được sử dụng.Tuần tự (lược) GUID cho Oracle
Cảm ơn!
Cảm ơn câu trả lời của bạn. Tuy nhiên, những gì tôi theo sau không phải là liệu liệu có phải là một kiểu dữ liệu tốt cho các hướng dẫn trong Oracle hay không, nhưng nếu thuật toán được đề cập sẽ gây ra phân mảnh chỉ mục không cần thiết trong Oracle, mặc dù nó có vẻ là một lựa chọn tốt cho MS SQL Server. Hơn nữa, tôi cần phải tạo ra các guids của tôi trên máy khách, vì vậy hàm SYS_GUID sẽ không có nhiều trợ giúp. – Eyvind
Phân chia chỉ mục không cần thiết là gì? Tất nhiên GUIDs sẽ được lây lan (phân mảnh) thông qua toàn bộ phòng của dữ liệu có thể. Đó là những gì GUID là cho. Sự phân mảnh của dữ liệu là một thuộc tính cố hữu của thuật toán GUID, mà cơ sở dữ liệu phải xử lý, cho dù đó là sql-server hay oracle. Việc triển khai chỉ mục có thể xử lý việc này, xem -> http://en.wikipedia.org/wiki/B-tree –
Ý tưởng là sử dụng thuật toán tạo ra các chuỗi * tuần tự * thay vì phiên bản ngẫu nhiên chuẩn. – Eyvind