Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Создание вычисляемого поля [D5, IB5.x]


dolmat ©   (2003-10-29 15:46:00) 

Делаю таблицу:
create table kvp(
scet varchar(7),
dom computed by (scet),//здесь надо четыре первых символа
kv_n computed by (scet)//здесть надо три последних символа
);

Как правильно?


Johnmen   (2003-10-29 18:40:00) [1]

>Zacho © (29.10.03 18:23)

Ура ! Еще не слабоумие ! :)

As the SUBSTRING function is not supported at all by IB or LIBS databases,
it is not possible to have a sub-string operation in the column list of
a query (exception: IB can do sub-strings via User-Defined Functions).


Zacho   (2003-10-29 18:23:00) [2]


> Johnmen © (29.10.03 17:49) [11]

Для IB 6.x может я и прогнал. Хотя вроде бы помню, что так и было. Хотя UDF SUBSTR в стандартной ib_udf.dll там тоже была, точно помню :) Но и встроенная функция SUBSTRING тоже была, или и у меня слабоумие началось :) Проблема в том, что с IB 6.x я уже 2 с лишним года не работаю, а ставить его только для проверки этого - лень :)


Johnmen   (2003-10-29 17:49:00) [3]

>Zacho © (29.10.03 16:56) [9]
>SUBSTRING (FIELD_NAME FROM n FOR n)

Может у меня уже старческое слабоумие, но для IB это точно не так...:))) А как ?


AndSoft   (2003-10-29 17:21:00) [4]

Если все вышесказанное не помогло тогда делай так:
Создай таблицу без этих полей.
Затем в датасете открой редактор полей и добавь сам два поля.
поставь флажок Calculate.
В событии onCalculate обработай поля как надо вот и все :-)


Zacho   (2003-10-29 16:56:00) [5]


> Johnmen © (29.10.03 16:19) [8]

SUBSTRING (FIELD_NAME FROM n FOR n)
:)


Johnmen   (2003-10-29 16:19:00) [6]

>Zacho © (29.10.03 16:10) [5]
>Есть начиная с IB6.0 (Естт...

Прошу уточнить назв. указанной встроенной ф-ии для IB6,FB,YA
:)))


dolmat   (2003-10-29 16:15:00) [7]

Вообще может кто знает где описание функций лежит кроме help


Johnmen   (2003-10-29 16:12:00) [8]

Однозначно UDF.
Но можно просто два поля. Тогда scet вычисляемое, 1||2.


Zacho   (2003-10-29 16:10:00) [9]

Есть начиная с IB6.0 (Есттественно, в FB и Ya тоже есть) В остальных версиях - UDF


Vlad   (2003-10-29 16:04:00) [10]

>Anatoly Podgoretsky © (29.10.03 16:00) [3]
Насколько я знаю эта функция поставляется в отдельной библиотеке с UDF (по крайней мере в клонах IB)


Anatoly Podgoretsky   (2003-10-29 16:00:00) [11]

В SQL89 есть функция SUBSTRING, ИБ должен ее поддерживать


dolmat   (2003-10-29 15:58:00) [12]

А стандартной процедуры нет? типа copy(s,1,4);


mOOx_   (2003-10-29 15:55:00) [13]

Что-то мне подсказывает, что только через УДФ. Больше не знаю как.


Наверх

Титульная страница Поиск, карта сайта Написать письмо