Гость
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / DDL таблицы с калькулируемым полем (Computed BY) / 3 сообщений из 3, страница 1 из 1
24.08.2015, 09:05
    #39034701
FedorinoFF
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DDL таблицы с калькулируемым полем (Computed BY)
Здравствуйте, коллеги!

Баг или фича?

В UTF базе (да думаю и не только в ней) создал простую табличку с калькулируемым полем:

CREATE TABLE GUEST (
LAST_NAME VARCHAR(100),
FIRST_NAME VARCHAR(100),
MIDDLE_NAME VARCHAR(100),
FIO VARCHAR(110) COMPUTED BY (
LAST_NAME ||
COALESCE(' ' || SUBSTRING(NULLIF(TRIM(FIRST_NAME), '') FROM 1 FOR 1) || '.', '') ||
COALESCE(' ' || SUBSTRING(NULLIF(TRIM(MIDDLE_NAME), '') FROM 1 FOR 1) || '.', '')));


Проблема нарисовалась тут, когда посмотрел на вкладку DDL в IBExpert (потеряна информация о размерности поля FIO):

/******************************************************************************/
/*** Tables ***/
/******************************************************************************/
CREATE TABLE GUEST (
LAST_NAME VARCHAR(100),
FIRST_NAME VARCHAR(100),
MIDDLE_NAME VARCHAR(100),
FIO COMPUTED BY (
LAST_NAME ||
COALESCE(' ' || SUBSTRING(NULLIF(TRIM(FIRST_NAME), '') FROM 1 FOR 1) || '.', '') ||
COALESCE(' ' || SUBSTRING(NULLIF(TRIM(MIDDLE_NAME), '') FROM 1 FOR 1) || '.', ''))
);
/******************************************************************************/

И вроде не очень страшно, но:
- на базе с UTF FB генерит размер для поля аж в VARCHAR(1216) ;
- при сравнении баз, подозреваю, информация о размере поля тоже потеряется.
...
Рейтинг: 0 / 0
24.08.2015, 10:26
    #39034745
IBExpert
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DDL таблицы с калькулируемым полем (Computed BY)
ИМХО, вообще не страшно.
Сервер должен правильно тип поля генерить, а вот эксперт, возможно, чудит. Проверю.
...
Рейтинг: 0 / 0
24.08.2015, 10:53
    #39034769
FedorinoFF
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DDL таблицы с калькулируемым полем (Computed BY)
IBExpert,

провел исследования. вот результат UTF база, автоматический размер для COMPUTED BY поля
...
Рейтинг: 0 / 0
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / DDL таблицы с калькулируемым полем (Computed BY) / 3 сообщений из 3, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]