मुझे तालिका की तालिका से तालिका परिभाषा क्रम में कॉलम सूचीबद्ध करने की आवश्यकता है:
select * from syscolumns
where id = object_id('MyTable')
--order by colid
syscolumns
तालिकाओं की जांच करके दो कॉलम प्रासंगिक लगते हैं: colid
और colorder
। Syscolumns पर MSDN आलेख कहता है:
colid | smallint | Column or parameter ID.
colorder | smallint | Identified for informational purposes only.
| Not supported. Future compatibility is not guaranteed.
मैंने दौड़ने की कोशिश की
select * from syscolumns where colorder <> colid
जिसमें कोई पंक्तियाँ नहीं निकलीं, और इससे मुझे लगता है कि इन स्तंभों में ज्यादातर समय समान मूल्य होते हैं।
यह दिखता है कि सबसे सुरक्षित शर्त कोलाइड का उपयोग करना है। हालाँकि मुझे यह जानने की उत्सुकता होगी: क्या इन दोनों स्तंभों में अंतर है, और यदि है, तो यह अंतर क्या है?
साथ ही MSDN आलेख, पुष्टि नहीं करता है कि कॉलिड तालिका परिभाषा के क्रम को दर्शाता है। हालांकि यह मानना उचित है कि यह मामला है, क्या आप मुझे बता सकते हैं, यदि आप सुनिश्चित हैं कि यह मामला है, तो आप कैसे जानते हैं कि यह है?