powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Firebird 3.0.7. Диалект 1. Генератор для поля с типом DOUBLE
14 сообщений из 14, страница 1 из 1
Firebird 3.0.7. Диалект 1. Генератор для поля с типом DOUBLE
    #40056768
Dimbuch®
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.
Возможно ли в БД Firebird 3.0.7 Диалект 1 создать генератор для поля с типом DOUBLE?
...
Рейтинг: 0 / 0
Firebird 3.0.7. Диалект 1. Генератор для поля с типом DOUBLE
    #40056770
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimbuch®
Добрый день.
Возможно ли в БД Firebird 3.0.7 Диалект 1 создать генератор для поля с типом DOUBLE?
Генератор будет возвращать INTEGER, значения генератора, конечно, можно присваивать полю дабл.
...
Рейтинг: 0 / 0
Firebird 3.0.7. Диалект 1. Генератор для поля с типом DOUBLE
    #40056772
Dimbuch®
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
YuRock,

Да, это я пробовал. Но нужны значения больше чем INTEGER (2147483647)
...
Рейтинг: 0 / 0
Firebird 3.0.7. Диалект 1. Генератор для поля с типом DOUBLE
    #40056773
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimbuch®
YuRock,

Да, это я пробовал. Но нужны значения больше чем INTEGER (2147483647)
Увы, пожелалку, чтоб в диалект 1 разрешили BIGINT так и не сделали, несмотря на все потуги
В т.ч. в генераторах.
...
Рейтинг: 0 / 0
Firebird 3.0.7. Диалект 1. Генератор для поля с типом DOUBLE
    #40056774
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimbuch®,

Возможно, поможет разбить на 2 поля. Хотя вряд ли, понятное дело.
...
Рейтинг: 0 / 0
Firebird 3.0.7. Диалект 1. Генератор для поля с типом DOUBLE
    #40056798
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimbuch®
нужны значения больше чем INTEGER (2147483647)
Звучит весьма подозрительно.
...
Рейтинг: 0 / 0
Firebird 3.0.7. Диалект 1. Генератор для поля с типом DOUBLE
    #40056800
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRockУвы, пожелалку, чтоб в диалект 1 разрешили BIGINT так и не сделали

и не сделают похоже. В Release Notes Firebird 4.0 сказано

Deprecation of Legacy SQL Dialect 1

Starting with Firebird 4, Dialect 1 is declared deprecated. Its support will be removed in future
Firebird versions, with Dialect 3 becoming the only dialect supported. Please consider migrating to
Dialect 3 as soon as possible.
...
Рейтинг: 0 / 0
Firebird 3.0.7. Диалект 1. Генератор для поля с типом DOUBLE
    #40056824
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис
Starting with Firebird 4, Dialect 1 is declared deprecated. Its support will be removed in future
Firebird versions, with Dialect 3 becoming the only dialect supported. Please consider migrating to
Dialect 3 as soon as possible.
и когда?
...
Рейтинг: 0 / 0
Firebird 3.0.7. Диалект 1. Генератор для поля с типом DOUBLE
    #40057050
Dimbuch®
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Для клиента, видимо, работает. Но на сервере никак.

Вот здесь https://firebirdsql.org/file/documentation/pdf/ru/firebirddocs/generatorguide/firebird-generator-guide-ru.pdf написано так:

2.4.1. Диалект клиентов и значения генераторов
При общении с сервером СУБД Firebird клиент может установить как диалект 1, так и
диалект 3, независимо от того, к какой базе данных он подключен. Именно диалект
клиента, а не диалект базы данных, определяет как СУБД Firebird передает значение
генератора клиенту:
• Если диалект клиента 1, сервер возвращает клиенту значение генератора в виде
урезанного 32-битного целого. Но внутри базы данных сгенерированные значения
остаются 64-битными, и они не зацикливаются после достижения 2
31 -1 (даже если это
так выглядит на стороне клиента). Это верно для баз данных и диалекта 1, и диалекта 3.
• Если диалект клиента 3, сервер передает полное 64-битное значение клиенту. Опять таки, это верно для баз данных и диалекта 1, и диалекта 3.
...
Рейтинг: 0 / 0
Firebird 3.0.7. Диалект 1. Генератор для поля с типом DOUBLE
    #40057055
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimbuch®
Для клиента, видимо, работает. Но на сервере никак.

Вот здесь https://firebirdsql.org/file/documentation/pdf/ru/firebirddocs/generatorguide/firebird-generator-guide-ru.pdf написано так:

2.4.1. Диалект клиентов и значения генераторов
При общении с сервером СУБД Firebird клиент может установить как диалект 1, так и
диалект 3, независимо от того, к какой базе данных он подключен. Именно диалект
клиента, а не диалект базы данных, определяет как СУБД Firebird передает значение
генератора клиенту:
• Если диалект клиента 1, сервер возвращает клиенту значение генератора в виде
урезанного 32-битного целого. Но внутри базы данных сгенерированные значения
остаются 64-битными, и они не зацикливаются после достижения 2
31 -1 (даже если это
так выглядит на стороне клиента). Это верно для баз данных и диалекта 1, и диалекта 3.
• Если диалект клиента 3, сервер передает полное 64-битное значение клиенту. Опять таки, это верно для баз данных и диалекта 1, и диалекта 3.
Похоже на неправду. Лень проверять.
Что значит передает клиенту? Тип поля при препаре запроса станет ведь INTEGER 4 байта.
...
Рейтинг: 0 / 0
Firebird 3.0.7. Диалект 1. Генератор для поля с типом DOUBLE
    #40057067
Dimbuch®
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
YuRock,

Вот и у меня ничего не получилось.
Поэтому решил написать здесь. Может кто-нибудь знает...
...
Рейтинг: 0 / 0
Firebird 3.0.7. Диалект 1. Генератор для поля с типом DOUBLE
    #40057104
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimbuch®,

генератор это системный объект. ему тип задать нельзя.
...
Рейтинг: 0 / 0
Firebird 3.0.7. Диалект 1. Генератор для поля с типом DOUBLE
    #40058901
Коваленко Дмитрий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий
Симонов Денис
Starting with Firebird 4, Dialect 1 is declared deprecated. Its support will be removed in future
Firebird versions, with Dialect 3 becoming the only dialect supported. Please consider migrating to
Dialect 3 as soon as possible.
и когда?


Код: plaintext
1.
2.
3.
// Add (or subtract) the contents of a descriptor to value block, with dialect-1 semantics.
 // This function can be removed when dialect-3 becomes the lowest supported dialect. (Version 7.0?)
dsc* ArithmeticNode::add(const dsc* desc, impure_value* value, const ValueExprNode* node, const UCHAR blrOp)



https://github.com/FirebirdSQL/firebird/blob/568e870356b2b95226a20d810f71f2092e438862/src/dsql/ExprNodes.cpp#L1924-L1928
...
Рейтинг: 0 / 0
Firebird 3.0.7. Диалект 1. Генератор для поля с типом DOUBLE
    #40058908
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
01.04.2021 15:51, Коваленко Дмитрий пишет:
> Version 7.0?

фух, успокоил!

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Firebird 3.0.7. Диалект 1. Генератор для поля с типом DOUBLE
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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