Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Базы данных под .NET > Загрузка и выгрузка файла из базы |
Автор: Krayshon 14.7.2015, 12:08 | ||||||||
Имеется база в которой хранятся pdf и txt файлы, а так же данные об этих файлах. Для реализации используется SQL Server 2008 и Visual Studio 2010 на языке C#. Для начала были созданы классы для загрузки и выгрузки файлов
Далее часть кода с загрузкой файла в базу
Ну и попытка его скачать
Все работает до последнего шага. При попытке скачать вылетает "DATA NOT EXISTS!" прописанные в GetDataFromBase. Не могу понят где ошибка, надеюсь кто-нибудь поможет. |
Автор: Экскалупатор 14.7.2015, 12:16 | ||
судя по этому запросы мы хотим достать PDF из таблицы Literatura, где PDF = ... чему? PDF это бинарное поле и для того что бы этот запрос сработал нужно туда забить все содержимое искомого PDF, что само по себе весьма странно. Измените запрос на выборку по какому либо ключу, или по имени. но не по СОДЕРЖИМОМУ файла. К тому же пытаетесь вы его скачивать именно по имени, но это имя в запросе используете для поиска в ТЕЛЕ PDF, т.е. в вашем бинароном поле. должно быть что-то вроде: string selectCMD = string.Format("SELECT PDF FROM Literatura WHERE Name='{0}'", pDFLabel2); |
Автор: Krayshon 14.7.2015, 13:35 | ||||
Имя поля в котором содержатся байты называется PDF |
Автор: Экскалупатор 14.7.2015, 22:01 | ||
да именно это я и написал! Но ты пытаешься получить данные не по содержимому файла, а по ИМЕНИ:
а имя в каком поле содержится? тоже в PDF? чет я сомневаюсь. Вот и получается, что ты хочешь достать PDF по имени, но при этом в запросе имя сравниваешь с бинарным полем PDF |
Автор: Krayshon 15.7.2015, 09:00 | ||||
У меня не хранится имя, предлагаете добавить поле или можно работать и с этими данными? |
Автор: Krayshon 15.7.2015, 10:39 | ||||
Вопрос решен, тему можно закрыть Добавлено через 2 минуты и 4 секунды
Спасибо за ответ, сделал практически все так как Вы и написали. |