![]() |
Модераторы: korob2001, ginnie |
![]() ![]() ![]() |
|
DEER |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 749 Регистрация: 12.4.2005 Где: г. Рязань Репутация: 1 Всего: 13 |
у меня у одного поля в БД(MySQL 5) тип LONGBLOB, не могу получить, то что там записано
![]() т.е. запрос а выборку срабатывает нормально, но потом, когда пытаюсь получить значение из этого поля, например в $res, ничего не возвращается ![]() Как это лечиться? -------------------- |
|||
|
||||
korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 31 Всего: 61 |
Покажи пример того, как ты пытаешься это сделать.
-------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
DEER |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 749 Регистрация: 12.4.2005 Где: г. Рязань Репутация: 1 Всего: 13 |
pdump.dump имеет тип LONGBLOB этот код выводит
и всё, т.е. запись то отбирается, но значение не возвращается Это сообщение отредактировал(а) DEER - 21.11.2005, 11:00 -------------------- |
||||
|
|||||
sharq |
|
||||
![]() Perl Liker ![]() ![]() Профиль Группа: Участник Сообщений: 841 Регистрация: 13.12.2004 Где: Ростов-на-Дону Репутация: 23 Всего: 28 |
DEER
Попробуй посмотреть, что в переменной находится:
Зачем ты в запросе указываешь таблицу перед полем? Ты же работаешь с одной таблицей. В этом может быть и ошибка. Раз ты используешь хеши при выборке, то забирай все поля.
И используй fetchrow в цикле для получения всех записей или вообще используй selectrow_hashref. ![]() Это сообщение отредактировал(а) sharq - 21.11.2005, 12:00 -------------------- [color=gray]There's More Than One Way To Do It[/color] |
||||
|
|||||
DEER |
|
||||||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 749 Регистрация: 12.4.2005 Где: г. Рязань Репутация: 1 Всего: 13 |
Спасибо, попробую
ВОт если запрос сделать так
он возвращает "1", т.е. ошибки нет, это я проверял.... просто мне кажется что этот LONGBLOB надо получать каким то иным способом.... ![]() -------------------- |
||||||||||
|
|||||||||||
DEER |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 749 Регистрация: 12.4.2005 Где: г. Рязань Репутация: 1 Всего: 13 |
Может не в кассу, но в JAVA есть метод дла получения бинарных данных
где res - результат запроса, что то подобное моему $ref вот что нить подобного нету в Perl? -------------------- |
|||
|
||||
sharq |
|
|||
![]() Perl Liker ![]() ![]() Профиль Группа: Участник Сообщений: 841 Регистрация: 13.12.2004 Где: Ростов-на-Дону Репутация: 23 Всего: 28 |
DEER perldoc DBI - LongReadLen.
-------------------- [color=gray]There's More Than One Way To Do It[/color] |
|||
|
||||
DEER |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 749 Регистрация: 12.4.2005 Где: г. Рязань Репутация: 1 Всего: 13 |
не пошло
Добавлено @ 13:45 Поясни плиз
он может быть использован для контроля длины поля??? Так что ли? а в этом коде что происхдит? он сначала "подготавливается" для того чтобы можно было получать данные из Blob'а что ли?
-------------------- |
||||||
|
|||||||
DEER |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 749 Регистрация: 12.4.2005 Где: г. Рязань Репутация: 1 Всего: 13 |
Всё! по ходу понял!
Короче этот LongReadLen отвечает за максимальную длину выбираемых полей, по умолчанию он стоит в "0", что означает что длинные поля скорее всего не будут выбираться. Для выбора этих полей сначала надо произвести изменение этого аттрибута
и потом уже можно делать выборку из БД
по идее должно заработать. Правильно? Это сообщение отредактировал(а) DEER - 21.11.2005, 14:10 -------------------- |
||||
|
|||||
korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 31 Всего: 61 |
![]() -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
DEER |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 749 Регистрация: 12.4.2005 Где: г. Рязань Репутация: 1 Всего: 13 |
Всё работает!!! Даже очень!!!
sharq Спасиба за ссылку! korob2001Это не моя пререгатива, базу мне готовую дали ![]() -------------------- |
|||
|
||||
Kiber_rat |
|
|||
![]() MACMANIAC ![]() ![]() Профиль Группа: Участник Сообщений: 276 Регистрация: 18.4.2002 Где: Ashdod, Israel Репутация: 7 Всего: 9 |
korob2001 Если хранить в базе ссылку на данные хранящиеся где-то в файлах то это нарушает целостность хранения данных и усложняет возможности для их архивироваия. С этой точки зрения хранение в базе двоичных данных - меньшее из зол. Я иногда использую хранение сериализованных данных в базе, что бы потом их можно было легко превратитьв структуру (хэш например), это тоже оправдывает хранение двоичных данных в базе.
-------------------- Best regards! @..@_____Ku6ep =*=______\______KPbIC
|
|||
|
||||
korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 31 Всего: 61 |
Да всё это понятно, но не дорого ли эта база будет обходиться, если в ней хранить изображения, mp3, flash файлы и т.п.?
-------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
Kiber_rat |
|
|||
![]() MACMANIAC ![]() ![]() Профиль Группа: Участник Сообщений: 276 Регистрация: 18.4.2002 Где: Ashdod, Israel Репутация: 7 Всего: 9 |
Во всам важно чувство меры
![]() -------------------- Best regards! @..@_____Ku6ep =*=______\______KPbIC
|
|||
|
||||
alSteve |
|
|||
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 15.4.2008 Репутация: нет Всего: нет |
Доброго дня!
Помогите пожалуйста разобраться в проблеме! Есть код:
в поле TEXT типа LONGBLOB (MySQL5) хранится zip-архив. исходный размер архива 6714 байт. после выполнения вышеуказанного скрипта сохраняется файл test.zip размером 6732 байта и соответственно архив некорректный. Распаковать его не представляется возможным. Где моя ошибка? :dash1 Заранее благодарен! |
|||
|
||||
yura_nev |
|
||||
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 28.12.2007 Репутация: нет Всего: нет |
после
|
||||
|
|||||
amg |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1145 Регистрация: 3.8.2006 Где: Новосибирск Репутация: 38 Всего: 50 |
Да, должно помочь, если в базе файл нормальный. Чтобы в этом убедится, посмотрите его размер сразу после извлечения из базы:
|
|||
|
||||
alSteve |
|
||||||
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 15.4.2008 Репутация: нет Всего: нет |
большое спасибо! заработало! |
||||||
|
|||||||
![]() ![]() ![]() |
Правила форума "Perl" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |