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

सी #/एसक्यूएल 2005 में बीएलओबी डेटा पढ़ने के लिए मेमोरी प्रभावी तरीका

यह उत्कृष्ट लेख यहां देखें या यह ब्लॉग पोस्ट एक लंबी व्याख्या के लिए यह कैसे करना है।

मूल रूप से, आपको एक SqlDataReader का उपयोग करने और SequentialAccess specify निर्दिष्ट करने की आवश्यकता है जब आप इसे बनाते हैं - तब आप डेटाबेस से बीएलओबी को पढ़ सकते हैं (या लिख ​​सकते हैं) जो भी आकार आपके लिए सबसे अच्छा है।

मूल रूप से कुछ ऐसा:

SqlDataReader myReader = getEmp.ExecuteReader(CommandBehavior.SequentialAccess);

while (myReader.Read())
{
   int startIndex = 0;

   // Read the bytes into outbyte[] and retain the number of bytes returned.
   retval = myReader.GetBytes(1, startIndex, outbyte, 0, bufferSize);

   // Continue reading and writing while there are bytes beyond the size of the buffer.
   while (retval == bufferSize)
   {
      // write the buffer to the output, e.g. a file
      ....

      // Reposition the start index to the end of the last buffer and fill the buffer.
      startIndex += bufferSize;
      retval = myReader.GetBytes(1, startIndex, outbyte, 0, bufferSize);
   }

   // write the last buffer to the output, e.g. a file
   ....
}

// Close the reader and the connection.
myReader.Close();

मार्क



  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 सर्वर में केवल एक चयन के साथ दूसरी अंतिम पंक्ति लेना?

  2. SQL सर्वर फेलओवर क्लस्टर इंस्टालेशन -4

  3. SQL सर्वर में INSERT INTO SELECT क्वेरी में डुप्लिकेट से बचें

  4. सभी बिंदु प्राप्त करें (त्रिज्या वाले वृत्त), जो दिए गए बिंदु को ओवरलैप करते हैं

  5. कॉलम से मान कैसे निकालें और दूसरे कॉलम में परिणाम अपडेट करें