float
या यदि आप पुराने स्कूल जाना चाहते हैं:
real
आप फ्लोट (53) का भी उपयोग कर सकते हैं, लेकिन इसका मतलब फ्लोट के समान है।
("वास्तविक" फ्लोट (24) के बराबर है, फ्लोट / फ्लोट (53) नहीं। "
दशमलव (एक्स, वाई) एसक्यूएल सर्वर प्रकार जब आप चाहते हैं के लिए है सटीक नहीं बल्कि चल बिन्दु (अनुमानों हो सकता है) की तुलना में दशमलव संख्या। यह C # "दशमलव" डेटा प्रकार के विपरीत है, जो कि 128-बिट फ्लोटिंग पॉइंट नंबर की तरह है।
MSSQL का फ्लोट प्रकार .NET में 64-बिट डबल प्रकार के बराबर है । (2011 के मेरे मूल उत्तर में कहा गया है कि मंटिसा में थोड़ा अंतर हो सकता है, लेकिन मैंने 2020 में इसका परीक्षण किया है और वे दोनों बहुत छोटे और बहुत बड़ी संख्या के द्विआधारी प्रतिनिधित्व में 100% संगत प्रतीत होते हैं - देखें https: / /dotnetfiddle.net/wLX5Ox मेरे परीक्षण के लिए)।
चीजों को और अधिक भ्रामक बनाने के लिए, C # में एक "फ्लोट" केवल 32-बिट है, इसलिए यह SQL में वास्तविक / फ्लोट (24) प्रकार में फ्लोट / फ्लोट (53) की तुलना में एमएस के बराबर होगा।
आपके विशिष्ट उपयोग के मामले में ...
आपको एक-एक मीटर सटीकता के भीतर अक्षांश और देशांतर का प्रतिनिधित्व करने के लिए दशमलव बिंदु के बाद 5 स्थानों की आवश्यकता है, और आपको केवल डिग्री के लिए दशमलव बिंदु से पहले तीन अंकों तक की आवश्यकता है। फ्लोट (24) या दशमलव (8,5) MSSQL में आपकी आवश्यकताओं के लिए सबसे उपयुक्त होगा, और C # में फ्लोट का उपयोग करना काफी अच्छा है, आपको डबल की आवश्यकता नहीं है। वास्तव में, आपके उपयोगकर्ता संभवतः सवारी के लिए आने वाले तुच्छ अंकों का एक गुच्छा होने के बजाय 5 दशमलव स्थानों पर चक्कर लगाने के लिए धन्यवाद करेंगे।