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

varBinary (अधिकतम) के लिए क्या SqlDbType मानचित्र?

SqlDbType.VarBinary लंबाई -1 के साथ VARBINARY (MAX) के बराबर है, कम से कम सिद्धांत में। लेकिन समस्या थोड़ी अधिक जटिल है, क्योंकि एक प्रकार भी है (एनम मान नहीं), अर्थात् SqlTypes.SqlBytes जिसका उपयोग किया जा सकता है। और वहाँ है SqlTypes.SqlFileStream जिसका उपयोग VARBINARY(MAX) . के लिए भी किया जा सकता है प्रकार, जब उनके पास FILESTREAM . है गुण।

लेकिन समस्या यह है कि इनमें से कोई भी एनम या प्रकार VARBINARY(MAX) के साथ काम करने के साथ वास्तविक मुद्दे को कवर नहीं करता है। ADO.Net में कॉलम:मेमोरी खपत। इन सभी प्रकारों, जब 'आउट-ऑफ-द-बॉक्स' का उपयोग किया जाता है, तो स्मृति में एकल सरणी के रूप में आवंटित मूल्य की प्रतियां तैयार करेंगे, जो कि सबसे अच्छा प्रदर्शन नहीं करता है, लेकिन जैसे-जैसे सामग्री बड़ी हो जाती है, इसका उपयोग करना असंभव हो जाता है क्योंकि आवंटन विफलता . मेरे पास कुछ लेख हैं जो VARBINARY(MAX) . को संभालने का उचित तरीका दिखाते हैं स्ट्रीमिंग सेमेन्टिक्स का उपयोग करके ADO.Net में मान जो संपूर्ण सामग्री की इन-मेमोरी प्रतियों के निर्माण से बचते हैं:

  • एएसपी.नेट एमवीसी के माध्यम से SQL सर्वर से छवियों को डाउनलोड और अपलोड करें
  • FILESTREAM MVC:SQL सर्वर से चित्र डाउनलोड और अपलोड करें


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. आप एक एसडीएफ फ़ाइल (एसक्यूएल सर्वर कॉम्पैक्ट संस्करण) कैसे खोलते हैं?

  2. SQL सर्वर अनुक्रमणिका - आरोही या अवरोही, इससे क्या फर्क पड़ता है?

  3. SQL सर्वर 2000 के साथ @TABLE EXEC @query में सम्मिलित करें

  4. ऑपरेशन के बराबर में SQL_Latin1_General_CP1_CI_AS और लैटिन1_General_CI_AS के बीच टकराव को हल नहीं कर सकता

  5. आप SQL सर्वर में कॉलम के डेटाटाइप को कैसे बदलते हैं?