Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Bộ nhớ cách hiệu quả để đọc dữ liệu BLOB trong C # / SQL 2005

Xem bài viết xuất sắc này tại đây hoặc bài đăng trên blog này để được giải thích dài về cách thực hiện.

Về cơ bản, bạn cần sử dụng SqlDataReader và chỉ định SequentialAccess với nó khi bạn tạo nó - sau đó bạn có thể đọc (hoặc ghi) BLOB từ cơ sở dữ liệu với nhiều phần ở bất kỳ kích thước nào phù hợp nhất với bạn.

Về cơ bản như sau:

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();

Marc



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hiểu trình phân tích khối lượng công việc để lập bản đồ tắc nghẽn hiệu suất

  2. Định dạng đầu ra của PowerShell SQL Server thành các cột và hàng

  3. Định dạng cột ngày giờ &thời lượng sysjobhistory trong SQL Server

  4. Chuyển đổi định dạng Ngày thành định dạng DD / MMM / YYYY trong SQL Server

  5. Giới thiệu về Từ đồng nghĩa trong SQL Server