Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> метод "getBlob", пакет java.sql 
:(
    Опции темы
Гость_Max
  Дата 7.10.2003, 17:45 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Всем добрый день.

Вопрос такой.
В базе данных «mySQL», нужно сохранить текст, где-то на 1000 символов.
Я пробовал создавать колонку типа «Blob», или типа «Text». Как мне достать этот текст?

Что я сделал:

String s1 = rs.getBlob(“column_name”).toString();

Ошибку не выдает, но и текст не показывает, выдает что-то вроде названия объекта.

  Вверх
Sun
Дата 7.10.2003, 18:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Account removed
***


Профиль
Группа: Экс. модератор
Сообщений: 1611
Регистрация: 14.8.2002

Репутация: 8
Всего: 48



Тебе наверно лучше получить InputStream через метод getBinaryStream() а затем вычитать данные из потока.


--------------------
Account removed
PM MAIL   Вверх
DarkDS
Дата 8.10.2003, 12:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 748
Регистрация: 6.5.2003
Где: Таллинн, Эстония

Репутация: 11
Всего: 16



.toString(); - Выдает дебаговую информацию. Если этот метод не переопределен, чтобы выдавать осмысленную информацию, то, по дефолту, он выдает название инстанса (то есть имя объекта и его адресс в памяти JVM)


PM MAIL   Вверх
DarkDS
Дата 8.10.2003, 12:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 748
Регистрация: 6.5.2003
Где: Таллинн, Эстония

Репутация: 11
Всего: 16



Если тект создан, то можешь достать rset.getString("column_name") для типа текст... Блоб - это байтовая информация... Обычно используется для хранения картинок и тд и тп...
PM MAIL   Вверх
Гость_Max
Дата 11.10.2003, 19:37 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Может кому пригодится…, демонстрирую последнюю версию как достать текст записанный в виде объекта Blob в базе mySQL (Текст больше 250 символов):
/********************************************/
String g7;

BufferedReader in = new BufferedReader(new InputStreamReader(rs.getBinaryStream("Column_name")));
String line; StringBuffer ttt = new StringBuffer();
try{
while((line = in.readLine()) !=null){ttt.append(line);}
g7 = ttt.toString();
}catch(IOException ioe){}
finally{in.close();}
/*******************************************/

Хорошая ссылка по этому вопросу:
http://www.asmodeus.com.ua/library/java/JD...sultset.doc.htm

Теперь где можно наступить на грабли smile.gif
С помощью ResultSet возможно получать очень большие данные типа LONGVARBINARY или LONGVARCHAR. Методы getBytes и getString возвращают эти данные в виде одного большого куска (вплоть до пределов, которые можно узнать с помощью метода Statement.getMaxFieldSize). Тем не менее, может оказаться удобнее считывать очень большие данные небольшими кусками. Это делается с помощью потоков (java.io.InputStream), которые возвращаются некоторыми методами ResultSet. Обратите внимание на то, что к этим потокам надо обращаться сразу, так как они будут закрыты при следующем вызове getXXX объекта ResultSet. (Такое поведение диктуется низкоуровневой реализацией доступа к большим двоичным объектам)

Спасибо всем за участие.

  Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

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


 




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


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

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