Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

एक अलग 1-1 तालिका में varbinary फ़ील्ड होने का क्या लाभ है?

कोई प्रदर्शन या परिचालन लाभ नहीं है। SQL 2005 के बाद से LOB प्रकार पहले से हैं इंजन द्वारा आपके लिए एक अलग आवंटन इकाई, एक अलग बी-पेड़ में संग्रहीत किया जाता है। यदि आप टेबल और इंडेक्स संगठन SQL सर्वर का आप देखेंगे कि प्रत्येक विभाजन में 3 आवंटन इकाइयाँ हैं:डेटा, LOB और पंक्ति-ओवरफ़्लो:


(स्रोत:s-msft.com )

एक LOB फ़ील्ड (varchar(max), nvarchar(max), varbinary(max), XML, CLR UDTs के साथ-साथ बहिष्कृत प्रकार टेक्स्ट, ntext और छवि) डेटा रिकॉर्ड में ही, क्लस्टर्ड इंडेक्स में, केवल एक होगा बहुत छोटा पदचिह्न:LOB आवंटन इकाई में एक सूचक, देखें एनाटॉमी ऑफ़ ए रिकॉर्ड

LOB को स्पष्ट रूप से एक अलग तालिका में संग्रहीत करने से आप बिल्कुल कुछ भी प्राप्त नहीं करते हैं . आप बस अनावश्यक जटिलता जोड़ते हैं क्योंकि पूर्व परमाणु अद्यतनों को अब खुद को दो अलग-अलग तालिकाओं में वितरित करना पड़ता है, जिससे एप्लिकेशन और एप्लिकेशन लेनदेन संरचना जटिल हो जाती है।

यदि LOB सामग्री एक संपूर्ण फ़ाइल है तो शायद आपको SQL 2008 में अपग्रेड करने और FILESTREAM



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर में SYSNAME डेटा प्रकार क्या है?

  2. SQL सर्वर 2008 पर 70 मिलियन अत्यंत उच्च घनत्व वाले स्थानिक बिंदु क्लाउड पर निकटतम पड़ोसी क्वेरी को अनुकूलित करें

  3. एसक्यूएल सर्वर 2008 में वर्कर को दशमलव में कनवर्ट करना

  4. SQL ट्रिगर का उपयोग करके ओवरलैपिंग दिनांक सीमाओं को सम्मिलित करने से रोकें

  5. SQL सर्वर 2008 - यदि मौजूद नहीं है तो अन्य अपडेट करें