Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / IBExpert Новый топик    Ответить
Топик располагается на нескольких страницах: 1 2 3 4 5      [все]
 Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
В сегодняшней версии поддерживаются новые синтаксические конструкции, функции и т.д. в PSQL-объектах. Можно потестить.

Про Database Comparer писать не надо, его буду пилить в последнюю очередь.

ЗЫ. Модераторы, а можно тему закрепить пока?
28 фев 19, 09:45    [21821399]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert,

а по часовым поясам положительные новости есть? Последний раз когда пробовал они не верно отображались.
28 фев 19, 10:19    [21821432]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Симонов Денис
а по часовым поясам положительные новости есть? Последний раз когда пробовал они не верно отображались.


Я у себя ничего не правил.

Проверил...
SELECT CAST('00:00:00 Europe/Moscow' AS TIME WITH TIME ZONE),
       CAST('00:00:00 +3' AS TIME WITH TIME ZONE) FROM RDB$DATABASE


выдает 21:00:00 в обеих колонках, а раньше выдавал разные значения.
Насколько это (21:00) правильно - фиг знает. Я в этих таймзонах путаюсь.
28 фев 19, 10:46    [21821464]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
IBExpert
выдает 21:00:00 в обеих колонках, а раньше выдавал разные значения.
Насколько это (21:00) правильно - фиг знает. Я в этих таймзонах путаюсь.


Похоже, все равно ерунда. Если кастить к строке, то 00:00:00 выдает, что логично.
28 фев 19, 10:50    [21821469]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert,

надо сравнивать с результатами в ISQL

SQL> connect 'inet4://localhost:3054/test' user SYSDBA password 'masterkey';
Database: 'inet4://localhost:3054/test', User: SYSDBA
SQL> SELECT CAST('00:00:00 Europe/Moscow' AS TIME WITH TIME ZONE),
CON> CAST('00:00:00 +3' AS TIME WITH TIME ZONE) FROM RDB$DATABASE;

CAST CAST
============================================== ==============================================
00:00:00.0000 Europe/Moscow 00:00:00.0000 +03:00

SQL>

Ты сам декодируешь структуры ISC_TIMESTAMP_TZ и ISC_TIME_TZ или используешь
IUtil.decodeTimeTz и IUtil.decodeTimeStampTz?
28 фев 19, 12:20    [21821591]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Симонов Денис
надо сравнивать с результатами в ISQL


ISQL и раньше как-то умудрялся правильный результат выдавать, мне это ничего не говорит.
Но в движке-то таки что-то поменяли, раз теперь одно и то же время в обеих колонках выдает. Раньше разное выдавал.

Симонов Денис
Ты сам декодируешь структуры ISC_TIMESTAMP_TZ и ISC_TIME_TZ или используешь
IUtil.decodeTimeTz и IUtil.decodeTimeStampTz?


Значение времени декодируется ровно тем же куском кода, как и в случае ISC_TIME: берутся первые четыре байта и скармливаются isc_decode_sql_time. Ну так вот в данном конкретном случае в этих четырех байтах должен быть ноль. И как его ни крути, 9 часов вечера из него никак не выкрутишь. А от сервера прилетает совсем не ноль...
28 фев 19, 14:54    [21821829]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert,

Может потому что

README.time_zone.md
TIME/TIMESTAMP WITH TIME ZONE has respectively the same storage of TIME/TIMESTAMP WITHOUT TIME ZONE plus 2 bytes for the time zone identifier or displacement.

The time/timestamp parts are stored in UTC (translated from the informed time zone).
28 фев 19, 15:20    [21821857]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
в fbclient работа с TIME WITHOUT TIME ZONE и TIME WITH TIME ZONE отличается

void UtilInterface::decodeTime(ISC_TIME time,
	unsigned* hours, unsigned* minutes, unsigned* seconds, unsigned* fractions)
{
	tm times;
	isc_decode_sql_time(&time, &times);

	if (hours)
		*hours = times.tm_hour;
	if (minutes)
		*minutes = times.tm_min;
	if (seconds)
		*seconds = times.tm_sec;
	if (fractions)
		*fractions = time % ISC_TIME_SECONDS_PRECISION;
}

void UtilInterface::decodeTimeTz(CheckStatusWrapper* status, const ISC_TIME_TZ* timeTz,
	unsigned* hours, unsigned* minutes, unsigned* seconds, unsigned* fractions,
	unsigned timeZoneBufferLength, char* timeZoneBuffer)
{
	try
	{
		tm times;
		int intFractions;
		TimeZoneUtil::decodeTime(*timeTz, CVT_commonCallbacks, &times, &intFractions);

		if (hours)
			*hours = times.tm_hour;

		if (minutes)
			*minutes = times.tm_min;

		if (seconds)
			*seconds = times.tm_sec;

		if (fractions)
			*fractions = (unsigned) intFractions;

		if (timeZoneBuffer)
			TimeZoneUtil::format(timeZoneBuffer, timeZoneBufferLength, timeTz->time_zone);
	}
	catch (const Exception& ex)
	{
		ex.stuffException(status);
	}
}
28 фев 19, 15:23    [21821864]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Симонов Денис
IBExpert,

Может потому что

README.time_zone.md
TIME/TIMESTAMP WITH TIME ZONE has respectively the same storage of TIME/TIMESTAMP WITHOUT TIME ZONE plus 2 bytes for the time zone identifier or displacement.

The time/timestamp parts are stored in UTC (translated from the informed time zone).


Бррр... Хочешь сказать, надо отнимать/прибавлять сдвиг часовой зоны??
Т.е., '00:00:00 Europe/Moscow' означает "полночь по московскому времени", а соответствующее ему ISC_TIME_TZ должно содержать 21:00 UTC и часовой пояс Москвы? Тогда все логично...
Но где в таком случае брать сдвиг для часовых поясов вроде 'Europe/Moscow'?
28 фев 19, 15:39    [21821891]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert,

вот поэтому в fbclient и реализовали специальный хелпер, ибо работа с часовыми поясами не тривиальна. Я так понимаю он аж до icu лезет.
28 фев 19, 15:46    [21821903]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Симонов Денис
вот поэтому в fbclient и реализовали специальный хелпер, ибо работа с часовыми поясами не тривиальна. Я так понимаю он аж до icu лезет.


Я в legacy api не вижу ничего специального для ISC_TIME_TZ.
28 фев 19, 15:56    [21821921]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Симонов Денис
вот поэтому в fbclient и реализовали специальный хелпер, ибо работа с часовыми поясами не тривиальна. Я так понимаю он аж до icu лезет.


Да, пришлось таки прикручивать OOP API. Сейчас вроде правильно все отображается.
1 мар 19, 09:02    [21822398]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert,

спасибо. Уже можно посмотреть или не выкладывал ещё?
1 мар 19, 14:25    [21822746]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Симонов Денис
спасибо. Уже можно посмотреть или не выкладывал ещё?


Лежит уже.
1 мар 19, 15:06    [21822802]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert,

что-то не работает

select current_time from rdb$database


Error Message:
----------------------------------------
Access violation at address 6AEF917F in module 'fbclient.dll'. Read of address 00000004

[6AEF917F] isc_blob_set_desc + $465F
[00403BDF] System.@HandleAnyException + $33
[004F5BDE] Firebird.IUtil.decodeTimeTz (Line 253, "Firebird.pas" + 1) + $1E
[005345EC] FIBQuery.TFIBXSQLVAR.GetAsDateTime (Line 821, "FIBQuery.pas" + 30) + $30
[0052B8CC] FIBDataSet.TFIBCustomDataSet.FetchCurrentRecordToBuffer (Line 2276, "FIBDataSet.pas" + 69) + $E
[0052EBE7] FIBDataSet.TFIBCustomDataSet.GetRecord (Line 3991, "FIBDataSet.pas" + 50) + $16
[0050E152] Db.TDataSet.GetNextRecord (Line 9185, "DB.pas" + 9) + $13

Клиент родной. Взята официальная Beta 1.
1 мар 19, 15:46    [21822831]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert
В сегодняшней версии поддерживаются новые синтаксические конструкции, функции и т.д. в PSQL-объектах. Можно потестить.


NUMERIC(34, x) и DECIMAL(34, x) не отображаются в данных таблицы пишет

Unknown SQL data type (32758)

Причём DECFLOAT(34) работает
1 мар 19, 15:55    [21822837]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Симонов Денис
что-то не работает

select current_time from rdb$database



Странно, у меня работает... Клиент 1436.
1 мар 19, 16:07    [21822853]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Симонов Денис
NUMERIC(34, x) и DECIMAL(34, x) не отображаются в данных таблицы пишет

Unknown SQL data type (32758)

Причём DECFLOAT(34) работает


Для DECFLOAT там SET DECFLOAT BIND выполняется, а нумериками я еще не занимался.
1 мар 19, 16:08    [21822854]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert,

SELECT
    CAST('12.12.2018 00:00:00 +4:00' AS TIMESTAMP WITH TIME ZONE)
   -- , current_timestamp as v
FROM
    RDB$DATABASE


как только комментируем падает. Клиент точно такой же, БД создана с нуля и пустая.
1 мар 19, 16:28    [21822876]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
Симонов Денис,

* раскомментируем
1 мар 19, 16:30    [21822878]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
А если не расскоментировать, то все ОК что-ли? Конкретно на current_timestamp валится? А если вместо него вторым полем еще раз CAST('12.12.2018 00:00:00 +4:00' AS TIMESTAMP WITH TIME ZONE) заслать?
1 мар 19, 16:33    [21822881]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert,

там проблема с именованными поясами

SELECT
    CAST('12.12.2018 00:00:00 Africa/Asmera' AS TIMESTAMP WITH TIME ZONE)
FROM
    RDB$DATABASE


если задавать числами +4, +3:00 и другое то нормально
1 мар 19, 16:38    [21822890]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Симонов Денис
там проблема с именованными поясами


У меня всяко работает. Ладно, забей пока.
1 мар 19, 16:51    [21822907]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Возможно, у тебя по какой-то причине клиент IStatus при декодировании дергает. Но я его сейчас туда не передаю, там nil.
Завтра IStatus допилю и будем поглядеть.
1 мар 19, 17:20    [21822945]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Ну, так и есть. Если подсунуть неизвестную зону, то без IStatus он в AV выпадает.
Интересно, а что у тебя ISQL выдает на тех же запросах? По идее, тоже ругаться как-то должен.
1 мар 19, 17:28    [21822956]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert,

да нет вроде всё пучком

Use CONNECT or CREATE DATABASE to specify a database
SQL> connect 'inet4://localhost:3054/test' user sysdba password 'masterkey';
Database: 'inet4://localhost:3054/test', User: SYSDBA
SQL> select current_time from rdb$database;

CURRENT_TIME
==============================================
18:06:50.0000 Europe/Moscow

SQL>
1 мар 19, 18:11    [21822999]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Симонов Денис,

Попробуй сегодняшний билд.
2 мар 19, 15:53    [21823344]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert,

ага теперь ясно откуда ноги растут

SQLCODE: -902
GDSCODE: 335545167

Unsuccessful execution caused by a system error that precludes successful execution of subsequent statements.
Could not find acceptable ICU library.
Missing entrypoint u_setDataDirectory in ICU library.

теперь мне надо разобраться почему у меня ICU не грузится из под IBE
2 мар 19, 17:12    [21823372]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert,

сегодняшний билд заработал
5 мар 19, 22:03    [21825768]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Симонов Денис
сегодняшний билд заработал


В смысле? ICUшки нужные подтягивать стал? Но я ничего для этого не делал, так что дело не в билде.
6 мар 19, 06:11    [21825881]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Ritter
Member

Откуда: Россия, Воронеж
Сообщений: 73
Добрый день!

В диалоговом окне создания таблицы "New Table ..." нельзя задать имя более 31 символа.
Не то чтобы очень было нужно.
Но все таки...

К сообщению приложен файл. Размер - 17Kb
15 мар 19, 09:02    [21833280]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Ritter
Member

Откуда: Россия, Воронеж
Сообщений: 73
При Restore Database нет возможности выбрать размер страницы более 16b
15 мар 19, 09:05    [21833283]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Ritter
При Restore Database нет возможности выбрать размер страницы более 16b


Ручками там любой размер можно задать, но 32К добавил.

Ritter
В диалоговом окне создания таблицы "New Table ..." нельзя задать имя более 31 символа.


Исправил.
17 мар 19, 15:59    [21835271]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert,

добавь пожалуйста поддержку EXCESS параметров (см. https://github.com/FirebirdSQL/firebird/blob/master/doc/sql.extensions/README.execute_statement2)

CREATE PROCEDURE P_EXCESS (A_ID INT, A_TRAN INT = NULL, A_CONN INT = NULL)
  RETURNS (ID INT, TRAN INT, CONN INT)
AS
DECLARE S VARCHAR(255);
DECLARE W VARCHAR(255) = '';
BEGIN
  S = 'SELECT * FROM TTT WHERE ID = :ID';

  IF (A_TRAN IS NOT NULL)
  THEN W = W || ' AND TRAN = :a';

  IF (A_CONN IS NOT NULL)
  THEN W = W || ' AND CONN = :b';

  IF (W <> '')
  THEN S = S || W;

  -- could raise error if TRAN or CONN is null
  -- FOR EXECUTE STATEMENT (:S) (a := :A_TRAN, b := A_CONN, id := A_ID)

  -- OK in all cases
  FOR EXECUTE STATEMENT (:S) (EXCESS a := :A_TRAN, EXCESS b := A_CONN, id := A_ID)
      INTO :ID, :TRAN, :CONN
      DO SUSPEND;
END
19 мар 19, 22:42    [21837858]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Симонов Денис
добавь пожалуйста поддержку EXCESS параметров


Что-то у меня это не компилируется, ругается на "a" после EXCESS.
Это в последних снапшотах добавили?
20 мар 19, 05:32    [21837973]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert
Это в последних снапшотах добавили?


да, это добавили уже после Beta 1
20 мар 19, 10:33    [21838132]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Симонов Денис
добавь пожалуйста поддержку EXCESS параметров


Добавил.
20 мар 19, 15:29    [21838622]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert,

2019.7.16

установка SQL SECURITY для табличных триггеров в ленивом режиме не работает. В SQL скрипте который идёт на компиляцию это предложение отсутствует
12 авг 19, 23:39    [21947592]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
и ещё вопрос про новую функцию форматирование пакетов. Отступ для процедур и функций относительно главного блока BEGIN ... END как то можно задать?

CREATE OR ALTER PACKAGE MY_PACKAGE
SQL SECURITY DEFINER
AS
BEGIN
-- выводит вот так
PROCEDURE FILL_MARE (
    CODE_ROLL   INTEGER,
    DATE_BEGIN  DATE,
    DATE_END    DATE);

    -- хочу чтобы у процедур и функций был отступ от края
    PROCEDURE FILL_STALL (
        CODE_ROLL   INTEGER,
        DATE_BEGIN  DATE,
        DATE_END    DATE);

END
12 авг 19, 23:46    [21947595]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Симонов Денис
установка SQL SECURITY для табличных триггеров в ленивом режиме не работает. В SQL скрипте который идёт на компиляцию это предложение отсутствует


Исправил.
16 авг 19, 08:18    [21950674]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Симонов Денис
и ещё вопрос про новую функцию форматирование пакетов. Отступ для процедур и функций относительно главного блока BEGIN ... END как то можно задать?


Этот отступ берется равным отступу перед DECLARE в секции объявления переменных. Но, видимо, лучше сделать его равным отступу блоков кода (Block indent, закладка General). Есть ли смысл заводить для этого дела дополнительную настройку?
16 авг 19, 08:23    [21950676]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert
Но, видимо, лучше сделать его равным отступу блоков кода (Block indent, закладка General).


вот это бы подошло, да оно и логичней. Отдельную настройку делать не обязательно.
16 авг 19, 09:02    [21950695]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert,

в сегодняшнем снапшоте реализация для NUMERIC и DECIMAL с точностью 19-38 поменялась.
Теперь они основаны на типе INT128. Максимальная точность увеличена с 34 до 38!
DECFLOAT(16) и DECFLOAT(34) сохранены как самостоятельные типы

Подробности тут https://github.com/FirebirdSQL/firebird/blob/master/doc/sql.extensions/README.data_types
19 сен 19, 10:05    [21973920]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Симонов Денис
в сегодняшнем снапшоте реализация для NUMERIC и DECIMAL с точностью 19-38 поменялась.
Теперь они основаны на типе INT128. Максимальная точность увеличена с 34 до 38!


Понял, спасибо.
21 сен 19, 18:10    [21976027]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
OlegVk
Member

Откуда:
Сообщений: 8
Для проверки Выполнение в IBExpert SQL приведенного ниже ниже приводит к ошибке

select N * cast(1 as NUMERIC(15, 2))
from
(select count(*) N from RDB$DATABASE)
23 сен 19, 09:38    [21976495]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert,

проверил в сегодняшнюю версию. На первый взгляд вроде всё работает. Спасибо
29 сен 19, 15:46    [21982030]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert,

а нет. Поторопился. В отладчике нет поддержки NUMERIC(19-38, x) да и DECFLOAT(34)
29 сен 19, 15:52    [21982032]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Симонов Денис
а нет. Поторопился. В отладчике нет поддержки NUMERIC(19-38, x) да и DECFLOAT(34)


Отладчик - отдельная песня. Пока не очень понятно, как с этими типами там работать.
Да и в принципе только отображение, редактирование и выгрузка таких данных пока сделаны.
Даже сортировки еще нет.
29 сен 19, 16:41    [21982039]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Мимопроходящий
Member

Откуда: бурятский тундрюк, эсквайр
Сообщений: 31768

29.09.2019 16:41, IBExpert пишет:
> Отладчик - отдельная песня. Пока не очень понятно, как с этими типами там работать.
> Да и в принципе только отображение, редактирование и выгрузка таких данных пока сделаны.
> Даже сортировки еще нет.

ты их к BCD в Delphi приводишь?

Posted via ActualForum NNTP Server 1.5

30 сен 19, 12:00    [21982512]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Мимопроходящий
ты их к BCD в Delphi приводишь?


Нет, не привожу. toString/fromString интерфейсные использую.
30 сен 19, 13:50    [21982683]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Мимопроходящий
Member

Откуда: бурятский тундрюк, эсквайр
Сообщений: 31768

30.09.2019 13:50, IBExpert пишет:
> Нет, не привожу. toString/fromString интерфейсные использую.

а сортировать как?

Posted via ActualForum NNTP Server 1.5

30 сен 19, 13:56    [21982690]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Мимопроходящий
а сортировать как?


Если не уговорю Влада на добавление дополнительных функций в интерфейс, то придется что-то снаружи прикручивать.
А пока сортировки нет.
30 сен 19, 14:40    [21982750]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
Мимопроходящий,

дельфийский BCD не вмещает ни DECFLOAT(34), ни NUMERIC(38, x).
Там вроде есть ещё какая-то приблуда типа TFMTBCDField, но не знаю поддерживаются ли они в старых Delphi
30 сен 19, 14:43    [21982755]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Мимопроходящий
Member

Откуда: бурятский тундрюк, эсквайр
Сообщений: 31768

30.09.2019 14:43, Симонов Денис пишет:
> дельфийский BCD не вмещает ни DECFLOAT(34), ни NUMERIC(38, x).
> Там вроде есть ещё какая-то приблуда типа TFMTBCDField, но не знаю поддерживаются ли они в старых Delphi

type
  TBCD  = packed record
    Precision: Byte;
    SignSpecialPlaces: Byte;
    Fraction: packed array [0..31] of Byte;
  end;
32 байта, в каждом байте 2 десятичных знака (00..99).
итого - 64 значащих.

Posted via ActualForum NNTP Server 1.5

30 сен 19, 15:16    [21982821]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
хм у DecFloat34 есть toBcd и fromBcd. По идее можно было бы для Int128 сделать

interface DecFloat34 : Versioned
{
	const uint BCD_SIZE = 34;
	const uint STRING_SIZE = 43;	// includes terminating \0
	void toBcd(const FB_DEC34* from, int* sign, uchar* bcd, int* exp);
	void toString(Status status, const FB_DEC34* from, uint bufferLength, string buffer);
	void fromBcd(int sign, const uchar* bcd, int exp, FB_DEC34* to);
	void fromString(Status status, const string from, FB_DEC34* to);
}


вот только я не уверен что оно с delphi TBcd совместимо будет
30 сен 19, 18:44    [21983123]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Мимопроходящий
Member

Откуда: бурятский тундрюк, эсквайр
Сообщений: 31768

30.09.2019 18:44, Симонов Денис пишет:
> вот только я не уверен что оно с delphi TBcd совместимо будет

кто с кем несовместимо будет?

Posted via ActualForum NNTP Server 1.5

30 сен 19, 18:48    [21983128]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
Мимопроходящий,

я bcd в delphi не трогал. Но судя по тому что пишут в интернетах там какая-то вакханалия.

Вопрос можно ли использовать toBcd хоть как-то для TBcd?
30 сен 19, 18:53    [21983133]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Мимопроходящий
Member

Откуда: бурятский тундрюк, эсквайр
Сообщений: 31768

30.09.2019 18:53, Симонов Денис пишет:
> я bcd в delphi не трогал. Но судя по тому что пишут в интернетах там какая-то вакханалия.

в интернетах правды нет.

> Вопрос можно ли использовать toBcd хоть как-то для TBcd?

вопрос в том, на какую структуру оно опирается.
судя по декларации которую ты привёл, это не FMTBcd из C++

Posted via ActualForum NNTP Server 1.5

30 сен 19, 18:58    [21983140]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Gorynich
Member

Откуда:
Сообщений: 110
select sum(0.0)
from rdb$database
4 окт 19, 15:07    [21986820]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Мимопроходящий
Member

Откуда: бурятский тундрюк, эсквайр
Сообщений: 31768

04.10.2019 15:07, Gorynich пишет:
> select sum(0.0)
> from rdb$database

- шо это было?
- антоновка...
(С)

Posted via ActualForum NNTP Server 1.5

4 окт 19, 15:11    [21986823]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Gorynich
Member

Откуда:
Сообщений: 110
Сервер - fb 4.0.0.1621-0_x64
IBE - 2019.9.29.1

Результат запроса
select sum(0.0)
from rdb$database

имеет тип NUMERIC(38,1), но представляется "как текст", с неправильным десятичным разделителем.
Можно разделитель изменить?
4 окт 19, 15:14    [21986828]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Мимопроходящий
Member

Откуда: бурятский тундрюк, эсквайр
Сообщений: 31768

04.10.2019 15:14, Gorynich пишет:
> имеет тип NUMERIC(38,1)

вопрос из зала: оно что же, теперь все агрегаты к NUMERIC(38, x)
приводить будет?

Posted via ActualForum NNTP Server 1.5

4 окт 19, 15:49    [21986866]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
Gorynich,

а чем он неправильный? Точка как точка или ты запятую желаешь?
4 окт 19, 18:27    [21987047]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Gorynich
Member

Откуда:
Сообщений: 110
Симонов Денис
Gorynich,

а чем он неправильный? Точка как точка или ты запятую желаешь?


Хочу мышью открывать окна, чтобы decimal delimiter был одним и тем же (что и определен системно), для разных столбцов одного запроса
select sum(0.0), 0.0
from rdb$database


В моем же случае результат
0.0   0,0

SUM NUMERIC(38,1),
CONSTANT NUMERIC(18,1)
4 окт 19, 18:36    [21987056]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
mvb
Member

Откуда: Казань
Сообщений: 1450
Db Comparer ругается, если в процедуре расширенный вариант HASH:
insert into USERS (NAME, PWD_HASH)
      values ('Администратор', hash('bla-bla-bla' using MD5))
      returning ID into :id;


DBC
==== Error ==== : Procedure SP_SYS$INIT_DB: Missing: <)> (USING)
6 окт 19, 20:03    [21987731]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
mvb
Db Comparer ругается, если в процедуре расширенный вариант HASH:


Компарер еще почти ничего не знает про синтаксис четверки.
7 окт 19, 08:27    [21987910]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Gorynich
Можно разделитель изменить?


Можно, наверное.
7 окт 19, 08:28    [21987911]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
Мимопроходящий
04.10.2019 15:14, Gorynich пишет:
> имеет тип NUMERIC(38,1)

вопрос из зала: оно что же, теперь все агрегаты к NUMERIC(38, x)
приводить будет?


у тебя есть другие предложения? Когда считаем SUM или AVG трудно угадать сколько там реально записей будет в выборки, поэтому чтобы случайно не получить переполнение выдаём наиболее вместимый тип в prepare. Если это может поломать совместимость со старым клиентом, то просто делай BIND INT128 на BIGINT.
7 окт 19, 10:34    [21987983]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
В свежей версии сделана сортировка в гриде по DECFLOAT и NUMERIC(38,x) полям, агрегаты там же (пока только по NUMERIC(38,x)), частичная поддержка DECFLOAT и NUMERIC(38,x) в отладчике.
18 окт 19, 03:09    [21997009]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Gorynich
Member

Откуда:
Сообщений: 110
IBExpert
Gorynich
Можно разделитель изменить?


Можно, наверное.


В предыдущей версии (или мне показалось?) десятичный разделитель был изменен на системный. Но в 2019.10.18.1 вернулась точка вместо зяпятой (для моих региональных настроек системы).
18 окт 19, 13:47    [21997413]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Gorynich
В предыдущей версии (или мне показалось?) десятичный разделитель был изменен на системный. Но в 2019.10.18.1 вернулась точка вместо зяпятой (для моих региональных настроек системы).


Бажок, исправлю.
19 окт 19, 05:52    [21997861]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert,

добавь ключевое слово LATERAL для подсветки пожалуйста. В последней версии 4.0 это поддерживается.
7 апр 20, 10:20    [22112224]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Симонов Денис

добавь ключевое слово LATERAL для подсветки пожалуйста. В последней версии 4.0 это поддерживается.


А что это?
9 апр 20, 06:31    [22113271]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert,

Если перед производной таблицей указать ключевое слово LATERAL, то это позволит ссылаться
в них на столбцы предшествующих элементов из списка FROM. Без LATERAL каждый подзапрос
выполняется независимо и поэтому не может обращаться к другим элементам FROM.

Элемент LATERAL может находиться на верхнем уровне списка FROM или в дереве JOIN. В
последнем случае он может также ссылаться на любые элементы в левой части JOIN, справа
от которого он находится.

http://tracker.firebirdsql.org/browse/CORE-3435

использовать можно например вот так

SELECT
  HORSE.NAME,
  M.BYDATE,
  M.HEIGHT_HORSE,
  M.LENGTH_HORSE
FROM HORSE
CROSS JOIN LATERAL(
  SELECT *
  FROM MEASURE
  WHERE MEASURE.CODE_HORSE = HORSE.CODE_HORSE
  ORDER BY MEASURE.BYDATE DESC
  FETCH FIRST ROW ONLY) M


выведет всех лошадей с промерами и их последние промеры. Если промеров нет, то лошадь не будет выведена.

SELECT
  HORSE.NAME,
  M.BYDATE,
  M.HEIGHT_HORSE,
  M.LENGTH_HORSE
FROM HORSE
LEFT JOIN LATERAL(
  SELECT *
  FROM MEASURE
  WHERE MEASURE.CODE_HORSE = HORSE.CODE_HORSE
  ORDER BY MEASURE.BYDATE DESC
  FETCH FIRST ROW ONLY) M ON TRUE


А вот это выведет всех лошадей и их последние промеры, если они есть.
9 апр 20, 09:20    [22113305]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Ну вот, не только подсвечивать. Парсер тоже допиливать надо.
9 апр 20, 10:01    [22113319]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert,

добавь пожалуйста подсветку ключевых слов
enable disable publication

Это нужно для

README.ddl.txt
22) Added replication control clauses to ALTER DATABASE statement.
(Dmitry Yemanov)

ALTER DATABASE {ENABLE | DISABLE} PUBLICATION

Enables or disabled replication. The change is applied immediately after commit.

ALTER DATABASE ADD ALL TO PUBLICATION

Enables replication for all tables inside the database, including the ones to be created in the future.

ALTER DATABASE ADD TABLE {<table1>, <table2>, ..., <tableN>} TO PUBLICATION

Enables replication for the specified set of tables.

ALTER DATABASE DROP ALL FROM PUBLICATION

Disables replication for all tables inside the database, including the ones to be created in the future.

ALTER DATABASE DROP TABLE {<table1>, <table2>, ..., <tableN>} FROM PUBLICATION

Disables replication for the specified set of tables.

23) Added optional replication control clauses to CREATE TABLE and ALTER TABLE statements.
(Dmitry Yemanov)

CREATE TABLE <name> ... [ {ENABLE | DISABLE} PUBLICATION ]
ALTER TABLE <name> ... [ {ENABLE | DISABLE} PUBLICATION ]

Defines whether replication is enabled for the specified table.
If not specified in the CREATE TABLE statement, the database-level default behaviour is applied.


Вообще не плохо бы ещё какую-то визуальную настройку сделать где можно быстро включить/выключить таблицы для репликации.
22 апр 20, 11:25    [22120607]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
ещё надо бы добавить поддержку некоторых новых функций

MAKE_DBKEY
RDB$GET_TRANSACTION_CN
HEX_ENCODE
HEX_DECODE

описано здесь

https://github.com/FirebirdSQL/firebird/blob/master/doc/sql.extensions/README.builtin_functions.txt
23 апр 20, 15:54    [22121525]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Симонов Денис

добавь пожалуйста подсветку ключевых слов
enable disable publication


Добавил.
24 апр 20, 04:36    [22121812]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Симонов Денис
ещё надо бы добавить поддержку некоторых новых функций

MAKE_DBKEY
RDB$GET_TRANSACTION_CN
HEX_ENCODE
HEX_DECODE


Добавил подсветку и хинты.
24 апр 20, 04:37    [22121813]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert,

у меня IBExpert 2020.5.19.1 валится при попытке соединения с Firebrid 4.0.0.2011.
Клиентская библиотека той же версии.

Сигнатура проблемы:
Имя события проблемы: APPCRASH
Имя приложения: IBExpert.exe
Версия приложения: 2020.5.19.1
Отметка времени приложения: 2a425e19
Имя модуля с ошибкой: fbclient.dll
Версия модуля с ошибкой: 4.0.0.2011
Отметка времени модуля с ошибкой: 5ed460e8
Код исключения: c0000005
Смещение исключения: 00047dda
Версия ОС: 6.1.7601.2.1.0.256.1
Код языка: 1049
Дополнительные сведения 1: 9ad0
Дополнительные сведения 2: 9ad06e74f2f3442b3d90e7e79aef7354
Дополнительные сведения 3: fdff
Дополнительные сведения 4: fdff8ff4b1d8205a26e6b78e8f8b0911
9 июн 20, 10:06    [22147810]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert,

мне кажется это потому что, в снапшотах IUtil правили
9 июн 20, 10:07    [22147811]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Симонов Денис

мне кажется это потому что, в снапшотах IUtil правили


А чего там направили, если вкратце?
15 июн 20, 08:27    [22150744]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert,

да сам IUtils поменяли. Выкинули 2 метода которые преобразовывали хендлы в IAttechment, ITransaction, и разместили их в отдельные функции. Плюс номер версии интерфейса поправили

https://github.com/FirebirdSQL/firebird/commit/a9cef6d9aeaabc08d8f104230a38345340edf7a2

Скорее всего надо просто пересобрать с новым Firebird.pas
15 июн 20, 09:38    [22150776]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Симонов Денис
Выкинули 2 метода которые преобразовывали хендлы в IAttechment, ITransaction, и разместили их в отдельные функции. Плюс номер версии интерфейса поправили


Ну молодцы, чо. Номер версии как был 4, так и остался. Зато теперь getInt128 живет по другому адресу, и на попытке его дернуть все и сыпется. Могли бы и оставить эти несколько байт в таблице.
15 июн 20, 10:18    [22150807]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert,

ну там обоснование мол раз методы существовали только в бете, то и номер версии интерфейса менять не стоит.
На стадии альфы/беты такое вполне может быть.

автор
Плюс номер версии интерфейса поправили


я имел ввиду при генерации firebird.pas через клопа. Если ты его не используешь, то должно быть всё равно.
15 июн 20, 10:28    [22150815]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Подрихтовал IUtils у себя. Теперь, видимо, падать будет у тех, кто не самым свежим снапшотом пользуется.
15 июн 20, 11:04    [22150832]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
IBExpert,

спасибо.

Им проще ответить: обновитесь до текущего снапшота, API поменялся.
Вон Beta 1 -> Beta 2 ODS поменялось, и пришлось b/r делать
15 июн 20, 13:54    [22150965]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
CyberMax
Member

Откуда: Хабаровск
Сообщений: 1435
1. Парсер не понимает конструкции типа "SET BIND OF INT128 TO LEGACY;" в триггере.
2. Не выделяются жирным новые незарезерированные слова: BIND и LEGACY, хотя другие выделяются. Видимо, потому что их добавили в Beta 2.
26 июн 20, 01:50    [22157550]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
CyberMax
Парсер не понимает конструкции типа "SET BIND OF INT128 TO LEGACY;" в триггере.


ясен пень INT128 только позавчера добавили

IBExpert,

кстати надо бы теперь ещё и отдельный тип INT128 добавить в редакторы таблиц, ХП, функций
26 июн 20, 08:12    [22157576]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
CyberMax
Member

Откуда: Хабаровск
Сообщений: 1435
Симонов Денис
ясен пень INT128 только позавчера добавили

Это как пример было. Он и "SET BIND OF NUMERIC(38) TO LEGACY" не понимает.
26 июн 20, 08:30    [22157581]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
CyberMax
SET BIND OF NUMERIC(38) TO LEGACY


дык вот это в последнем снапшоте больше не поддерживается. INT128 он сразу и для всех NUMERIC/DECIMAL/INT128 работает
26 июн 20, 09:49    [22157614]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
CyberMax
Member

Откуда: Хабаровск
Сообщений: 1435
Симонов Денис,

Я тут вообще-то пишу про парсер IBExpert'а - что он не понимает команду SET BIND внутри триггера, а не про снапшоты сервера.
26 июн 20, 10:24    [22157636]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
CyberMax

Я тут вообще-то пишу про парсер IBExpert'а - что он не понимает команду SET BIND внутри триггера


Он понимает. BIND и LEGACY тоже подсвечивает.
INT128 пока не понимает, да.
26 июн 20, 11:01    [22157667]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
hvlad
Member

Откуда:
Сообщений: 11112
Симонов Денис
CyberMax
SET BIND OF NUMERIC(38) TO LEGACY


дык вот это в последнем снапшоте больше не поддерживается. INT128 он сразу и для всех NUMERIC/DECIMAL/INT128 работает
Ты в этом уверен ?
26 июн 20, 13:28    [22157780]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10703
hvlad,

про не поддерживается я наврал, но именно в этой записи распространяется только на NUMERIC(38, x), где x > 0
C INT128 распространяется на INT128 и все NUNERIC(38, x)
26 июн 20, 13:38    [22157789]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
mvb
Member

Откуда: Казань
Сообщений: 1450
Firebird-4.0.0.2097-0_Win32, сегодняшний
IBExpert 2020.7.7.1, сегодняшний

пытаюсь добавить вычисляемое поле, получаю Malformed string.

База UTF-8, подключение оно же.

К сообщению приложен файл. Размер - 29Kb
9 июл 20, 21:06    [22164863]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
mvb
Member

Откуда: Казань
Сообщений: 1450
и те, что добавлял раньше (пару месяцев назад), стали криво отображаться

К сообщению приложен файл. Размер - 11Kb
9 июл 20, 21:09    [22164864]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
mvb
Member

Откуда: Казань
Сообщений: 1450
ЧЯДНТ?

К сообщению приложен файл. Размер - 14Kb
10 июл 20, 23:43    [22165555]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
mvb
ЧЯДНТ?


В SQL-редакторе тот же ALTER что выдает?
11 июл 20, 06:39    [22165582]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
mvb
Member

Откуда: Казань
Сообщений: 1450
IBExpert,

вроде, выполняется, но в поле все равно кракозябры

К сообщению приложен файл. Размер - 15Kb
11 июл 20, 09:58    [22165601]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
mvb
Member

Откуда: Казань
Сообщений: 1450


К сообщению приложен файл. Размер - 18Kb
11 июл 20, 09:59    [22165602]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
mvb
Member

Откуда: Казань
Сообщений: 1450
просто запросом работает норм

К сообщению приложен файл. Размер - 15Kb
11 июл 20, 10:00    [22165603]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
mvb

пытаюсь добавить вычисляемое поле, получаю Malformed string.


Исправил. Но к FB 4 это никакого отношения не имеет.
11 июл 20, 14:16    [22165679]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
mvb
Member

Откуда: Казань
Сообщений: 1450
IBExpert,

на ФБ 2.5.9 и Win1251 это не вылазит

К сообщению приложен файл. Размер - 23Kb
12 июл 20, 11:05    [22165947]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
mvb
Member

Откуда: Казань
Сообщений: 1450
IBExpert
Исправил
IBE последний

К сообщению приложен файл. Размер - 27Kb
12 июл 20, 11:13    [22165950]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
mvb
Member

Откуда: Казань
Сообщений: 1450
через SQL Editor и SQL script - выполнилось норм

Сообщение было отредактировано: 12 июл 20, 11:13
12 июл 20, 11:15    [22165953]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
mvb
IBE последний


Послдений - это какой? Должно быть 2020.7.11.2.
Только что проверил - все нормально у меня.
13 июл 20, 05:08    [22166188]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
mvb
Member

Откуда: Казань
Сообщений: 1450
IBExpert, да, именно эта версия.

P.S. Сейчас еще проверил на новом поле - все работает, и добавление и редактирование.

Сообщение было отредактировано: 13 июл 20, 08:40
13 июл 20, 08:39    [22166224]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
mvb
Member

Откуда: Казань
Сообщений: 1450
На последнем снапшоте Firebird-4.0.0.1963-0-Beta2-Win32 ошибка при подключении:
+
Error Message:
----------------------------------------
Access violation at address 6BD94F4E in module 'fbclient.dll'. Write of address 00549032

[6BD94F4E] isc_to_sqlda + $167E
[00403BDF] System.@HandleAnyException + $33
[004F5C3D] Firebird.IUtil.getInt128 (Line 497, "Firebird.pas" + 0) + $5
[00542F35] FIBDatabase.TFIBDatabase.LoadClientLib (Line 1837, "FIBDatabase.pas" + 1) + $6
[0051825F] pFIBDatabase.TpFIBDatabase.Open (Line 278, "pFIBDatabase.pas" + 9) + $2
[005423F1] FIBDatabase.TFIBDatabase.SetConnected (Line 1280, "FIBDatabase.pas" + 4) + $4
[010E9A26] IBEDatabases.TIBEDatabase.Connect (Line 3242, "IBEDatabases.pas" + 2) + $10
[010724E6] InspectorFm.TInspectorFrame.OpenDatabase (Line 3371, "Frames\InspectorFm.pas" + 44) + $D
[00FF7745] Main.TIBEMainForm.actConnectToDatabaseExecute (Line 7174, "Main.pas" + 4) + $D
[01070E5D] InspectorFm.TInspectorFrame.ObjectsTLKeyPress (Line 2770, "Frames\InspectorFm.pas" + 27) + $9
[004593FB] Controls.TWinControl.KeyPress (Line 6452, "Controls.pas" + 1) + $16
[0045944E] Controls.TWinControl.DoKeyPress (Line 6468, "Controls.pas" + 9) + $A
[00983634] dxTL.TCustomdxTreeList.WndProc (Line 9530, "dxTL.pas" + 47) + $4
[00444388] Forms.StdWndProc (Line 1459, "Forms.pas" + 8) + $0
[0044DB97] Forms.TApplication.ProcessMessage (Line 6630, "Forms.pas" + 13) + $1
[0112FD02] IBExpert.IBExpert (Line 935, "D:\Projects_5\IBExpert\IBExpert.dpr" + 147) + $7
Версия IBE 2020.8.11.1
Из моей программы через FIB+ подключается норм.
17 авг 20, 22:44    [22183843]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
mvb
На последнем снапшоте Firebird-4.0.0.1963-0-Beta2-Win32


Какой же это последний? У меня далеко не последний, и тот уже .2076 RC1.
19 авг 20, 07:03    [22184269]     Ответить | Цитировать Сообщить модератору
 Re: Firebird 4. Про него пока пишите сюда.  [new]
mvb
Member

Откуда: Казань
Сообщений: 1450
IBExpert,

да, пардон, не с той ветки скачал ФБ, сейчас все норм. Спасибо!
19 авг 20, 12:05    [22184362]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: 1 2 3 4 5      [все]
Все форумы / IBExpert Ответить