SQLRU.net
Разработка приложений баз данных

Начало » Использование СУБД » Firebird, HQbird, InterBase » SET DECFLOAT ROUND (баба с возу...)
SET DECFLOAT ROUND [сообщение #2535] Tue, 13 June 2023 11:55 Переход к следующему сообщению
Dmitry Kovalenko в настоящее время не в онлайне  Dmitry Kovalenko
Сообщений: 51
Зарегистрирован: December 2022
Member
Я правильно понимаю, что клиент не может получить точные сведения о текущем режиме округления DECFLOAT?

Оператор SET DECFLOAT ROUND может быть запрятан куда угодно (EXECUTE BLOCK, SP, TRIGGER) и влияет на всю "сессию".

---
То есть можно смело забить на этот вопрос и локально округлять по одному и тому же правилу - HALF_UP.

Ага?
Re: SET DECFLOAT ROUND [сообщение #2596 является ответом на сообщение #2535] Mon, 19 June 2023 15:36 Переход к предыдущему сообщениюПереход к следующему сообщению
Dmitry Kovalenko в настоящее время не в онлайне  Dmitry Kovalenko
Сообщений: 51
Зарегистрирован: December 2022
Member
Походу, информацию о текущем округлении (и ловушках/TRAPS) можно было бы передавать через контекстные переменные CURRENT_DECFLOAT_ROUND (CURRENT_DECFLOAT_TRAPS) или через RDB$GET_CONTEXT('SYSTEM','DECFLOAT_ROUND'|'DECFLOAT_TRAPS')?

---
И еще глупый вопрос, чтобы два раза не вставать - если хочешь узнать доступные системные переменные RDB$GET_CONTEXT('SYSTEM', ...), нужно лезть в документацию? С помощью запроса их нельзя перечислить?
Re: SET DECFLOAT ROUND [сообщение #2597 является ответом на сообщение #2596] Mon, 19 June 2023 15:43 Переход к предыдущему сообщениюПереход к следующему сообщению
МП в настоящее время не в онлайне  МП
Сообщений: 889
Зарегистрирован: August 2022
Географическое положение: бурятский тун...
Senior Member
Dmitry Kovalenko
. Походу, информацию о текущем округлении (и ловушках/TRAPS) можно было бы передавать через контекстные переменные CURRENT_DECFLOAT_ROUND (CURRENT_DECFLOAT_TRAPS) или через RDB$GET_CONTEXT('SYSTEM','DECFLOAT_ROUND'|'DECFLOAT_TRAPS')?
+100500!
поддерживаю.

Dmitry Kovalenko
. И еще глупый вопрос, чтобы два раза не вставать - если хочешь узнать доступные системные переменные RDB$GET_CONTEXT('SYSTEM', ...), нужно лезть в документацию? С помощью запроса их нельзя перечислить?
кстати да!
почему бы их не запихнуть всё в туда же - RDB$TYPES ?
Re: SET DECFLOAT ROUND [сообщение #2599 является ответом на сообщение #2596] Mon, 19 June 2023 16:19 Переход к предыдущему сообщениюПереход к следующему сообщению
hvlad в настоящее время в онлайне  hvlad
Сообщений: 364
Зарегистрирован: August 2022
Senior Member
Dmitry Kovalenko писал(а) Mon, 19 June 2023 15:36
Походу, информацию о текущем округлении (и ловушках/TRAPS) можно было бы передавать через контекстные переменные CURRENT_DECFLOAT_ROUND (CURRENT_DECFLOAT_TRAPS) или через RDB$GET_CONTEXT('SYSTEM','DECFLOAT_ROUND'|'DECFLOAT_TRAPS')?

---
И еще глупый вопрос, чтобы два раза не вставать - если хочешь узнать доступные системные переменные RDB$GET_CONTEXT('SYSTEM', ...), нужно лезть в документацию? С помощью запроса их нельзя перечислить?
Трекер ? Два раза Wink
Re: SET DECFLOAT ROUND [сообщение #2600 является ответом на сообщение #2599] Mon, 19 June 2023 22:16 Переход к предыдущему сообщениюПереход к следующему сообщению
sim_84 в настоящее время не в онлайне  sim_84
Сообщений: 332
Зарегистрирован: June 2022
Senior Member
Через rdb$get_context можно было бы. Отдельная переменная перебор ихмо.
Список системных контекстных переменных надо в отдельной виртуальной таблице делать. Rdb$types для этого не слишком годится
Re: SET DECFLOAT ROUND [сообщение #2602 является ответом на сообщение #2600] Tue, 20 June 2023 09:14 Переход к предыдущему сообщению
Dmitry Kovalenko в настоящее время не в онлайне  Dmitry Kovalenko
Сообщений: 51
Зарегистрирован: December 2022
Member
sim_84 писал(а) Mon, 19 June 2023 22:16
Через rdb$get_context можно было бы. Отдельная переменная перебор ихмо.
Пешков вроде как подписался порешать вопрос с DECFLOAT.

https://github.com/FirebirdSQL/firebird/issues/7642

You can write there all what you are thinking about this issue Smile
Предыдущая тема: FB 4.0 DML в execute statement и автономные транзакции
Следующая тема: pointer page vanished from DPM_next (249)
Переход к форуму:
  


Текущее время: Wed Dec 18 13:53:55 GMT+3 2024

Общее время, затраченное на создание страницы: 0.01339 секунд