Kapan pun memungkinkan saya mendasarkan hubungan pada bidang-bidang utama lainnya. Menggunakan ObjectID telah menghadirkan masalah bagi saya di masa lalu untuk alasan yang tepat yang disebutkan oleh Lance. Dalam proyek-proyek di mana data yang ditransfer bolak-balik antara server SDE kami dan server klien, menggunakan ObjectID untuk tabel terkait berarti harus melakukan berbagai intrik pada tabel untuk menjaga hubungan.
Bahkan jika mereka tidak berencana untuk memindahkan data, saya masih lebih suka menggunakan bidang yang berbeda untuk kunci. Pengalaman saya adalah bahwa klien biasanya tidak sepenuhnya memahami implikasi dari tindakan mereka pada basis data SIG dan sering memecahkan banyak hal tanpa menyadarinya. Saya memiliki kasus di mana klien memindahkan data dengan cara yang mengubah ObjectID. Proyek-proyek saya biasanya melibatkan beberapa kode khusus untuk digunakan bersama dengan basis data dan saya tidak suka mengandalkan pemahaman klien tentang sistem untuk mencegah kegagalan. Jadi, saya lebih suka menggunakan bidang lain untuk kunci utama dan untuk hubungan, bidang yang bisa saya kontrol.