Saya perlu membuat daftar kolom dari tabel dalam urutan definisi tabel:
select * from syscolumns
where id = object_id('MyTable')
--order by colid
Dengan memeriksa syscolumns
tabel, dua kolom terlihat relevan: colid
dan colorder
. Artikel MSDN di syscolumns mengatakan:
colid | smallint | Column or parameter ID.
colorder | smallint | Identified for informational purposes only.
| Not supported. Future compatibility is not guaranteed.
Saya mencoba lari
select * from syscolumns where colorder <> colid
yang tidak menghasilkan baris, dan itu membuat saya berpikir bahwa kolom ini memiliki nilai yang sama hampir sepanjang waktu.
Itu terlihat bahwa taruhan paling aman adalah menggunakan colid. Namun saya ingin tahu: apakah ada perbedaan antara dua kolom ini, dan jika ada, apa perbedaan ini?
Juga artikel MSDN, tidak mengkonfirmasi, bahwa colid mencerminkan urutan definisi tabel. Meskipun ini masuk akal untuk berasumsi bahwa ini adalah masalahnya, dapatkah Anda memberi tahu saya, jika Anda yakin itu masalahnya, bagaimana Anda tahu bahwa ini masalahnya?