Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2005.03.27;
Скачать: [xml.tar.bz2];

Вниз

чтение BLOB SUB_TYPE TEXT в переменную VARCHAR в ХП   Найти похожие ветки 

 
Вольный Стрелок ©   (2005-02-28 18:44) [0]

Собственно, сабж.
Для иллюстрации - есть таблица с 2 полями: VARCHAR(30) и BLOB
Делаю в ХП:
DECLARE VARIABLE cOptValue VARCHAR( 32765 );
...
FOR SELECT opt_name, opt_value FROM Options
WHERE opt_name LIKE "Т%"
INTO :cOptName, :cOptValue
DO
BEGIN
 n = 1;
END

Компилируется замечательно, но при выполнении ругается Overflow occurred during data type conversion. Сonversion error from string "BLOB".
В чем загвоздка-то, не пойму. С поле opt_value хранятся короткие строки. Или вообще нельзя так делать?


 
Вольный Стрелок ©   (2005-02-28 18:54) [1]

И еще одно наблюдение - в отладчике IBExpert проходит нормально. Видимо, он выполняет ХП, пооператорно передавая на сервер (т.е. отдельные команды), а результаты выборок сохраняет где-то у себя в буфере.


 
DSKalugin ©   (2005-02-28 19:20) [2]

а что выдает ошибку? Клиентская программа или ИБЭксперт?
вообщето давай всю ХП и если ошибка в программе - кусок кода тоже

непонятно что делает вообще эта ХП и с БЛОБом в частности
Как можно дать ответ на этот недовопрос?


 
Вольный Стрелок ©   (2005-02-28 19:55) [3]

Я о клиентской программе не говорил не слова, нету ее. Ругается, видимо, сервер при выполнении ХП через IBExpert.
Вся ХП уже дана - в ней только этот FOR SELECT и все, остальное я повыкидывал, локализуя ошибку. Логика ХП здесь не важна. Просто пытаюсь прочитать текстовый блоб в строковую переменную.
А этот "недовопрос" формулируется так - почему записать из строковой переменной в поле блоб можно, а считать - вот такой болт?
Повторюсь, все происходит внутри ХП, никаких входных и выходных параметров.


 
Johnmen ©   (2005-03-01 09:33) [4]

>Просто пытаюсь прочитать текстовый блоб в строковую переменную.

UDF


 
Вольный Стрелок ©   (2005-03-01 11:03) [5]

Иначе никак? Не хочется ради одного запроса городить UDF...

И почему тогда в ошибке overflow? Какое может быть переполнение?


 
Johnmen ©   (2005-03-01 11:18) [6]

Не надо городить УДФ. Возьми готовую библиотеку.
Стандартное сообщение.


 
Вольный Стрелок ©   (2005-03-01 11:41) [7]

Т.е. все-таки иначе никак?
И почему тогда компилируется? Проверка типов должна же существовать на этапе компиляции...


 
Johnmen ©   (2005-03-01 11:44) [8]

А типы "почти" совместимые.
Кстати, как объявлено блоб поле ?


 
Вольный Стрелок ©   (2005-03-01 12:10) [9]

в сабже написано


 
Johnmen ©   (2005-03-01 12:17) [10]

Да-да, забыл уже про сабж...:)
В общем, длл в руки, УДФ на шею, и вперёд...


 
Вольный Стрелок ©   (2005-03-01 12:36) [11]

Неутешительно...
Что значит "почти совместимые"? Или да, или нет.
Но я так и не услышал - других вариантов (без UDF) нет?


 
Johnmen ©   (2005-03-01 12:40) [12]

Мне они неизвестны.
Можешь сходить на sql.ru по IB/FB/YA. Там недавно был в точности такой же вопрос. Поищи... Или задай...



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2005.03.27;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.042 c
1-1110438236
AlexTregubov
2005-03-10 10:03
2005.03.27
Иконки типов шрифтов


10-1087305616
Ivanhoe
2004-06-15 17:20
2005.03.27
Выбор распределенной системы


14-1110452824
1008
2005-03-10 14:07
2005.03.27
Есть ли у Mac и Unix что-то общее?


14-1109923750
Jeer
2005-03-04 11:09
2005.03.27
Что с мужиками ?


14-1110312734
Ukrainian
2005-03-08 23:12
2005.03.27
Украина. Кироваоградская обл.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский