Модераторы: gambit, Partizan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> не сохраняется картинка в базу 
:(
    Опции темы
Swatch
Дата 24.2.2015, 16:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 453
Регистрация: 2.7.2007

Репутация: нет
Всего: 1



добрый день.

Есть DataGridView. В первый столбец загружаются картинки из БД. В нулевом кнопка, нажав на которую появляется диалог для выбора картинки.
Выбираю картинку и пытаюсь сохранить. Не сохраняет. Пишет ошибку. БД Oracle, картинки храню в blob

Вот код:
Код

if (openFileDialog1.ShowDialog() == DialogResult.OK)
                {
                   Stream stream = openFileDialog1.OpenFile();
                    BinaryReader reader = new BinaryReader(stream);

                    byte[] icon = reader.ReadBytes((int)stream.Length);

                  var query = string.Format("update picturestbl t set t.ICON={0} where t.ID = {1}", icon, dataGridView1[3, curRow].Value.ToString());
                    ExecuteQuery(query);
                    dataGridView1.Refresh();


что не так с кодом? подобные запросы на update просто тектовых или числовых полей проходят на ура.... :( как сохранить картинку?
PM MAIL   Вверх
sgrey
Дата 26.2.2015, 05:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 265
Регистрация: 15.4.2006

Репутация: 1
Всего: 4



потому что нельзя бинарные данные просто загнать в строку и ожидать что они сохранятся правильно. Нужно использовать запросы с параметрами. Пример тут
Если с английским проблемы, могу перевести

Это сообщение отредактировал(а) sgrey - 26.2.2015, 05:03
PM MAIL   Вверх
Swatch
Дата 26.2.2015, 15:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 453
Регистрация: 2.7.2007

Репутация: нет
Всего: 1



Отлично, помогло. Только теперь надо как-то обновить DataGridView. А то данные в базу сохранились, но не обновились. Я, конечно, могу заново перерисовывать датагрид, но ведь если он заполняется из DataTable, данные должны обновляться? или надо принудительно что-то вызывать?
PM MAIL   Вверх
sgrey
Дата 26.2.2015, 18:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 265
Регистрация: 15.4.2006

Репутация: 1
Всего: 4



Нужно данные из БД заного запросить чтобы они обновились в DataGridView. 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка Windows Forms | Следующая тема »


 




[ Время генерации скрипта: 0.0999 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.