Jacek Salamon Programista
Temat: Dostęp sekwencyjny do bloba w Fajerberdzie przez ADO.NET
WitamMam taki problem:
Chcę pobierać z bazy danych Firebirda plik zawarty w polu BLOB, ale nie w całości tylko po kawałku, tak żeby w trakcie pobierania pliku aktualizować pasek postępu. W Internecie znalazłem wskazówkę, że należy zrobić tak:
FbDataReader rd = retrieveFileCmd.ExecuteReader(CommandBehavior.SequentialAccess);
Wtedy za pomocą metody rd.GetBytes pobiera się nie całego BLOBa na raz, tylko po kawałku. Tak jak to opisano np. tu:
http://www.devnewsgroups.net/group/microsoft.public.dotnet.framework.adonet/topic24541.aspx
lub tu:
http://www.akadia.com/services/dotnet_read_write_blob.html
Problem w tym, że u mnie BLOB pobiera się w całości, a następnie dopiero metoda GetBytes pobiera z tej pobranej całości kawałki. Podobno parametr CommandBehavior.SequentialAccess nie działa w przypadku wszystkich dostawców danych. Jak to jest z Firebirdem? Czy to zależy od architektury bazy danych czy od wersji biblioteki Firebirda dla .NET?