Như nhiều người đã đề xuất, đó là một câu hỏi về sự thuận tiện; nhưng có lẽ sâu xa hơn, đó là quy ước.
Là một lập trình viên, bản năng đầu tiên của tôi sẽ là sử dụng khóa số cho ID lớp vì đó là cách nó luôn được thực hiện. Thật vậy, ít nhất nó có thể không xảy ra với tôi, ở một mức độ có ý thức, rằng tôi nên làm điều đó theo bất kỳ cách nào khác. Tất nhiên, nếu có lý do kỹ thuật không sử dụng số nguyên, hãy nói nếu có khả năng có nhiều lớp hơn có thể được lưu trữ trong 32 bit (một đề xuất rất khó xảy ra!), Hoặc nếu có lý do kinh doanh cho nó, sau đó lựa chọn thay thế sẽ được xem xét.
Ngoài ra còn có các xem xét thuật toán với các phím số. Sắp xếp và tìm kiếm danh sách các giá trị được sắp xếp cuối cùng sẽ đưa ra sự so sánh giữa hai số, ngay cả khi đó là danh sách các chuỗi hoặc các đối tượng phức tạp; chúng chỉ đơn thuần được biến thành số với chức năng băm . Phải nói rằng, trên các máy tính hiện đại, việc tìm kiếm một danh sách nói 100 hoặc thậm chí 1000 mặt hàng thường nhanh chóng với cách tiếp cận mạnh mẽ như với thuật toán được tối ưu hóa cao. Trong trường hợp các lớp trong một hệ thống GIS, tôi không thể nhìn thấy ngay cả những bản đồ phức tạp nhất có hơn 1000 hoặc hơn thế, và ngay cả khi có, các tính toán liên quan khác sẽ nhận được các đơn đặt hàng lớn hơn bất kỳ mức tăng nhỏ nào từ một tối ưu hóa tìm kiếm một danh sách ngắn
Các khóa số nguyên "chỉ có ý nghĩa" đối với một lập trình viên, và như Brad nói, có nhiều nỗ lực hơn trong việc sử dụng các khóa không phải là số. Có thể không nhiều mã hơn, nhưng nỗ lực tinh thần nhiều hơn, và chúng ta là những sinh vật lười biếng của thói quen. Ngoài ra, khóa xác định duy nhất một thứ giống như một lớp trong GIS được coi là "ẩn" khỏi người dùng, để đảm bảo họ không gây rối với nó và phá vỡ mã dựa trên tính duy nhất của nó (từ khóa DB UNIQUE không hiểu). Bởi vì nếu bạn cung cấp cho người dùng đủ dây, sớm muộn sẽ có người tự treo mình với nó. Bằng mọi cách, thực thi tính duy nhất trên trường có thể chỉnh sửa của người dùng, nhưng hệ thống cơ bản phải cho rằng khóa của nó là duy nhất và không bị giả mạo.