Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.08.18;
Скачать: CL | DM;

Вниз

Как послать в StoredProc длинную строку в качестве параметра   Найти похожие ветки 

 
Мышь   (2003-07-22 21:04) [0]

Приветствую всех! Вопрос такой: у меня в качестве параметра в хранимую процедуру (MSSQL + BDE) используется строка. Причем ее длина заранее неизвестна, где то порядка 1K, но не более 2K. Как такую строку передать (Delphi6)?
Если написать ParamByName("...").AsString = ".....", то больше 255 не получится, причем еще и с глюком (типа, не могу найти хранимую процедуру с именем "абракадабра").
Если написать ParamByName("...").Value = ".....", (типа, догадайся, компилятор, сам) то ошибка "Unknown type".
В качестве типа пробовал подбирать разные, сейчас стоит ftString.
Заранее благодарен.


 
Тих   (2003-07-23 01:43) [1]

Попробовать заменить параметр на
@var text вместо nvarchar(или что там у тебя)


 
KSergey ©   (2003-07-23 09:45) [2]

Вообще-то просто общее предложение: отказаться от BDE. В пользу ADO.
Только не забывать, что ограничение на 8092 (вроде не ошибаюсь) символа все равно останется. Это уже к серверу.


 
clickmaker ©   (2003-07-23 17:11) [3]

Ну не знаю... Я работаю с БДЕ и передаю в хранилки строки > 255. Объявил просто параметр как @VeryLongString varchar(4000) и вперед


 
Мышь   (2003-07-23 21:34) [4]

Спасибо!
Про @var text я что то не подумал, попробую. А от "BDE в пользу ADO" уже не откажешься - слишком много понаписано всяческих прослоек, которые круто зависят от TQuery.
to clickmaker: Вот ни хрена так не получается. А какой тип данных у параметра ХП в Delphi?
to KSergey: Ограничение, по ходу 4000 ровно(!), во всяком случае при описании nvarchar.
А вообще я уже сделал по рабоче-крестьянски: 20 параметров по 255 и процедурку, которая бьет AnsiString на ShortString"и. А ХП на сервере потом это все складывает.
Еще раз спасибо!


 
KSergey ©   (2003-07-24 08:09) [5]

Мышь (23.07.03 21:34)
to KSergey: Ограничение, по ходу 4000 ровно(!), во всяком случае при описании nvarchar.


А про nvarchar в исходном посте ничего не было ;) Я имел в виду varchar (ограничение уточнил - ровно 8 тыщ)



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

Текущий архив: 2003.08.18;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.008 c
14-58383
Miralex
2003-08-04 14:32
2003.08.18
как сохранить в файл тип Record


14-58489
korvin
2003-07-23 12:33
2003.08.18
Table.Append - ошибка адреса памяти


14-58423
NNN
2003-08-02 18:03
2003.08.18
REGISTRACIJA PROGRAMM


14-58396
paxer
2003-08-04 13:45
2003.08.18
Ресурсы для компонента


14-58465
Новик
2003-07-21 16:06
2003.08.18
ado и dll