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

Вниз

Длина строки в Firebird 1.5   Найти похожие ветки 

 
Rule ©   (2005-09-20 16:23) [0]

необходима функция длины строки, ну допустим чтоб сделать такой запрос select length(field1) from table1 ...
спасибо всем за помощь ...
неужели только УДФ ???


 
Rule ©   (2005-09-20 16:24) [1]

забыл главное :-))), доки уже перерыл :-)))


 
Desdechado ©   (2005-09-20 16:26) [2]

ib_udf


 
Johnmen ©   (2005-09-20 16:28) [3]

Не обязательно удф, но чуть-чуть кода в хп, можно...


 
Rule ©   (2005-09-20 16:32) [4]

Desdechado ©   (20.09.05 16:26) [2]
ща поищу, но вроед смотрел ...


 
Rule ©   (2005-09-20 16:33) [5]

Johnmen ©   (20.09.05 16:28) [3]
а подтолкнуть на мысль как это сделать ???


 
Rule ©   (2005-09-20 16:36) [6]

Johnmen ©   (20.09.05 16:28) [3]

нашел

CREATE PROCEDURE Len (str VARCHAR(100))
 RETURNS (len INTEGER) AS
DECLARE VARIABLE pat VARCHAR(100);
BEGIN
 len = null;
 IF (str IS NULL) THEN EXIT;

 pat = "";
 len = 0;
 WHILE (NOT str LIKE pat) DO BEGIN
   pat = pat || "_";
   len = len + 1;
 END
END


 
Rule ©   (2005-09-20 16:36) [7]

Desdechado ©   (20.09.05 16:26) [2]

посмотрел не нашел ???, мож подскажешь ???


 
Johnmen ©   (2005-09-20 16:43) [8]

Можно ещё так попробовать (не уверен насчет работоспособности параметра в сабстринге для FB1.5):

S - строка
I=1;
C=SUBSTRING(C FROM I FOR 1);
WHILE (C<>"") DO BEGIN
 I=I+1;
 C=SUBSTRING(C FROM I FOR 1);
 END


 
Rule ©   (2005-09-20 16:53) [9]

Johnmen ©   (20.09.05 16:43) [8]
ну я думаю так будет дольше ...


 
Johnmen ©   (2005-09-20 16:55) [10]

>Rule ©   (20.09.05 16:53) [9]
>ну я думаю так будет дольше ...

Я думаю, что нет.
Да и не важно это - экономить на спичках :)


 
Desdechado ©   (2005-09-20 16:58) [11]

DECLARE EXTERNAL FUNCTION strlen
CSTRING(4096)
RETURNS INTEGER BY VALUE
ENTRY_POINT "IB_UDF_strlen" MODULE_NAME "ib_udf";
UDF - самое быстрое решение


 
Rule ©   (2005-09-20 17:15) [12]

Desdechado ©   (20.09.05 16:58) [11]
спасибо, действительно самое быстрое решение, с этим я согласен ... токо вот в сторедах преимущество, что после восттановления базы не надо опять объявлять внешнюю функцию ...


 
Андрей Жук ©   (2005-09-20 17:40) [13]


> токо вот в сторедах преимущество, что после
> восттановления базы не надо опять объявлять внешнюю
> функцию ...

UDF также не нужно опять объявлять


 
Desdechado ©   (2005-09-20 17:52) [14]

в ХП другое преимущество - права
а с восстановлением проблемы только тогда, когда dll отсутствует


 
Rule ©   (2005-09-20 17:59) [15]

Андрей Жук ©   (20.09.05 17:40) [13]
эта имел ввиду что надо наличие длл или со на сервере


 
Rule ©   (2005-09-20 18:00) [16]

Desdechado ©   (20.09.05 17:52) [14]
в ХП другое преимущество - права


кстати да, но думаю в данном случае это не актуально


 
Андрей Жук ©   (2005-09-20 18:38) [17]


> эта имел ввиду что надо наличие длл или со на сервере

ib_udf - в штатной поставке firebird/interbase


 
Rule ©   (2005-09-20 19:04) [18]

Андрей Жук ©   (20.09.05 18:38) [17]
эт я знаю, опять жеж шла речь не о конекретно этой удф, а о целесообразности подключать удф или писать сторед ...



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

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

Наверх




Память: 0.5 MB
Время: 0.039 c
8-1112943093
vidiv
2005-04-08 10:51
2005.10.30
Драйвер виртуальной звуковой карты


4-1124968435
vvvaaa
2005-08-25 15:13
2005.10.30
Перетаскивание формы


4-1125138258
lelik2005
2005-08-27 14:24
2005.10.30
Помогите с созданием окна по рисунку


2-1128852254
ArtemESC
2005-10-09 14:04
2005.10.30
Отладка


14-1128672819
Игорь Шевченко
2005-10-07 12:13
2005.10.30
Посоветуйте антивирус для домашнего использования