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

MySqlDataReader GetBytes बफर समस्या ...

पूरे बफ़र आकार को पढ़ने के बजाय, केवल अधिक से अधिक के लिए पूछें बफर आकार, लेकिन यह भी कि आप जो मानते हैं वह बचा हुआ है। ईमानदार होने के लिए, आप वैसे भी एक निश्चित आकार के बजाय बिल्कुल सही आकार का बफर बना सकते हैं।

// I assume this works for MySqlDataReader too...
int length = (int)reader.GetBytes(column, 0, null, 0, 0);
byte[] buffer = new byte[length];
int index = 0;

while (index < length)
{
    int bytesRead = (int)reader.GetBytes(column, index,
                                    buffer, index, length - index);
    index += bytesRead;
}

लेकिन अगर आप एक छोटा बफर चाहते थे (उदाहरण के लिए यदि आप इसे एक बार में एक बफर संसाधित कर रहे थे) तो आप इसका उपयोग कर सकते हैं:

int length = (int)reader.GetBytes(column, 0, null, 0, 0);
byte[] buffer = new byte[length];
int index = 0;

while (index < length)
{
    int bytesRead = (int)reader.GetBytes(column, index, buffer, 0, 
                                    Math.Max(buffer.Length, length - index));
    // Process the buffer, up to value bytesRead
    // ...
    index += bytesRead;
}



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. माइग्रेशन लार्वा 5.1 . में ऑटो इंक्रीमेंट फ़ील्ड को 1000 से प्रारंभ करें सेट करें

  2. PDO और तैयार किए गए कथनों के साथ mysql_* फ़ंक्शन को बदलना

  3. मैं MySQL में एकाधिक तालिकाओं में कॉलम कैसे जोड़ सकता हूं?

  4. Django पोस्ट सेव सिग्नल यूआईडी के बावजूद दो बार कॉल किया जा रहा है

  5. MySQL में SQLServer फ़ंक्शन SCOPE_IDENTITY () के बराबर?