powered by simpleCommunicator - 2.0.35     © 2025 Programmizd 02
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Firebird 4. Про него пока пишите сюда.
116 сообщений из 116, показаны все 5 страниц
Firebird 4. Про него пока пишите сюда.
    #39780197
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В сегодняшней версии поддерживаются новые синтаксические конструкции, функции и т.д. в PSQL-объектах. Можно потестить.

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

ЗЫ. Модераторы, а можно тему закрепить пока?
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39780214
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

а по часовым поясам положительные новости есть? Последний раз когда пробовал они не верно отображались.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39780228
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Дениса по часовым поясам положительные новости есть? Последний раз когда пробовал они не верно отображались.

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

Проверил...
Код: plsql
1.
2.
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) правильно - фиг знает. Я в этих таймзонах путаюсь.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39780231
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpertвыдает 21:00:00 в обеих колонках, а раньше выдавал разные значения.
Насколько это (21:00) правильно - фиг знает. Я в этих таймзонах путаюсь.

Похоже, все равно ерунда. Если кастить к строке, то 00:00:00 выдает, что логично.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39780287
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

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

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
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?
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39780432
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Дениснадо сравнивать с результатами в ISQL


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

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

Значение времени декодируется ровно тем же куском кода, как и в случае ISC_TIME: берутся первые четыре байта и скармливаются isc_decode_sql_time. Ну так вот в данном конкретном случае в этих четырех байтах должен быть ноль. И как его ни крути, 9 часов вечера из него никак не выкрутишь. А от сервера прилетает совсем не ноль...
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39780446
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

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

README.time_zone.mdTIME/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).
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39780450
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в fbclient работа с TIME WITHOUT TIME ZONE и TIME WITH TIME ZONE отличается

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
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);
	}
}
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39780468
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов ДенисIBExpert,

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

README.time_zone.mdTIME/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'?
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39780475
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

вот поэтому в fbclient и реализовали специальный хелпер, ибо работа с часовыми поясами не тривиальна. Я так понимаю он аж до icu лезет.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39780483
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денисвот поэтому в fbclient и реализовали специальный хелпер, ибо работа с часовыми поясами не тривиальна. Я так понимаю он аж до icu лезет.

Я в legacy api не вижу ничего специального для ISC_TIME_TZ.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39780765
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денисвот поэтому в fbclient и реализовали специальный хелпер, ибо работа с часовыми поясами не тривиальна. Я так понимаю он аж до icu лезет.

Да, пришлось таки прикручивать OOP API. Сейчас вроде правильно все отображается.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39781029
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

спасибо. Уже можно посмотреть или не выкладывал ещё?
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39781066
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денисспасибо. Уже можно посмотреть или не выкладывал ещё?

Лежит уже.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39781080
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

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

Код: sql
1.
select current_time from rdb$database



Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
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.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39781086
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpertВ сегодняшней версии поддерживаются новые синтаксические конструкции, функции и т.д. в PSQL-объектах. Можно потестить.


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

Unknown SQL data type (32758)

Причём DECFLOAT(34) работает
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39781097
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денисчто-то не работает

Код: sql
1.
select current_time from rdb$database




Странно, у меня работает... Клиент 1436.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39781098
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов ДенисNUMERIC(34, x) и DECIMAL(34, x) не отображаются в данных таблицы пишет

Unknown SQL data type (32758)

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

Для DECFLOAT там SET DECFLOAT BIND выполняется, а нумериками я еще не занимался.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39781111
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

Код: sql
1.
2.
3.
4.
5.
SELECT
    CAST('12.12.2018 00:00:00 +4:00' AS TIMESTAMP WITH TIME ZONE)
   -- , current_timestamp as v
FROM
    RDB$DATABASE



как только комментируем падает. Клиент точно такой же, БД создана с нуля и пустая.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39781112
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис,

* раскомментируем
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39781115
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А если не расскоментировать, то все ОК что-ли? Конкретно на current_timestamp валится? А если вместо него вторым полем еще раз CAST('12.12.2018 00:00:00 +4:00' AS TIMESTAMP WITH TIME ZONE) заслать?
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39781121
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

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

Код: sql
1.
2.
3.
4.
SELECT
    CAST('12.12.2018 00:00:00 Africa/Asmera' AS TIMESTAMP WITH TIME ZONE)
FROM
    RDB$DATABASE



если задавать числами +4, +3:00 и другое то нормально
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39781131
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денистам проблема с именованными поясами


У меня всяко работает. Ладно, забей пока.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39781154
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Возможно, у тебя по какой-то причине клиент IStatus при декодировании дергает. Но я его сейчас туда не передаю, там nil.
Завтра IStatus допилю и будем поглядеть.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39781160
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну, так и есть. Если подсунуть неизвестную зону, то без IStatus он в AV выпадает.
Интересно, а что у тебя ISQL выдает на тех же запросах? По идее, тоже ругаться как-то должен.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39781176
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

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

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
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>
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39781354
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис,

Попробуй сегодняшний билд.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39781364
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

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

Код: plaintext
1.
2.
3.
4.
5.
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
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39782722
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

сегодняшний билд заработал
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39782770
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Дениссегодняшний билд заработал

В смысле? ICUшки нужные подтягивать стал? Но я ничего для этого не делал, так что дело не в билде.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39786402
Ritter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день!

В диалоговом окне создания таблицы "New Table ..." нельзя задать имя более 31 символа.
Не то чтобы очень было нужно.
Но все таки...
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39786405
Ritter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
При Restore Database нет возможности выбрать размер страницы более 16b
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39787334
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RitterПри Restore Database нет возможности выбрать размер страницы более 16b

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

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

Исправил.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39788694
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

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

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
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
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39788742
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денисдобавь пожалуйста поддержку EXCESS параметров

Что-то у меня это не компилируется, ругается на "a" после EXCESS.
Это в последних снапшотах добавили?
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39788854
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpertЭто в последних снапшотах добавили?

да, это добавили уже после Beta 1
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39789114
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денисдобавь пожалуйста поддержку EXCESS параметров

Добавил.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39848555
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

2019.7.16

установка SQL SECURITY для табличных триггеров в ленивом режиме не работает. В SQL скрипте который идёт на компиляцию это предложение отсутствует
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39848558
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и ещё вопрос про новую функцию форматирование пакетов. Отступ для процедур и функций относительно главного блока BEGIN ... END как то можно задать?

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
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
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39850132
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денисустановка SQL SECURITY для табличных триггеров в ленивом режиме не работает. В SQL скрипте который идёт на компиляцию это предложение отсутствует

Исправил.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39850133
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Дениси ещё вопрос про новую функцию форматирование пакетов. Отступ для процедур и функций относительно главного блока BEGIN ... END как то можно задать?

Этот отступ берется равным отступу перед DECLARE в секции объявления переменных. Но, видимо, лучше сделать его равным отступу блоков кода (Block indent, закладка General). Есть ли смысл заводить для этого дела дополнительную настройку?
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39850146
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpertНо, видимо, лучше сделать его равным отступу блоков кода (Block indent, закладка General).

вот это бы подошло, да оно и логичней. Отдельную настройку делать не обязательно.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39863745
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
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
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39865065
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денисв сегодняшнем снапшоте реализация для NUMERIC и DECIMAL с точностью 19-38 поменялась.
Теперь они основаны на типе INT128. Максимальная точность увеличена с 34 до 38!


Понял, спасибо.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39865410
OlegVk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для проверки Выполнение в IBExpert SQL приведенного ниже ниже приводит к ошибке

select N * cast(1 as NUMERIC(15, 2))
from
(select count(*) N from RDB$DATABASE)
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39868657
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

проверил в сегодняшнюю версию. На первый взгляд вроде всё работает. Спасибо
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39868659
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

а нет. Поторопился. В отладчике нет поддержки NUMERIC(19-38, x) да и DECFLOAT(34)
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39868663
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Дениса нет. Поторопился. В отладчике нет поддержки NUMERIC(19-38, x) да и DECFLOAT(34)

Отладчик - отдельная песня. Пока не очень понятно, как с этими типами там работать.
Да и в принципе только отображение, редактирование и выгрузка таких данных пока сделаны.
Даже сортировки еще нет.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39869027
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
29.09.2019 16:41, IBExpert пишет:
> Отладчик - отдельная песня. Пока не очень понятно, как с этими типами там работать.
> Да и в принципе только отображение, редактирование и выгрузка таких данных пока сделаны.
> Даже сортировки еще нет.

ты их к BCD в Delphi приводишь?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39869133
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящийты их к BCD в Delphi приводишь?


Нет, не привожу. toString/fromString интерфейсные использую.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39869138
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
30.09.2019 13:50, IBExpert пишет:
> Нет, не привожу. toString/fromString интерфейсные использую.

а сортировать как?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39869173
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящийа сортировать как?


Если не уговорю Влада на добавление дополнительных функций в интерфейс, то придется что-то снаружи прикручивать.
А пока сортировки нет.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39869176
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий,

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

Код: pascal
1.
2.
3.
4.
5.
6.
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
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39869438
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хм у DecFloat34 есть toBcd и fromBcd. По идее можно было бы для Int128 сделать

Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
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 совместимо будет
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39869442
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
30.09.2019 18:44, Симонов Денис пишет:
> вот только я не уверен что оно с delphi TBcd совместимо будет

кто с кем несовместимо будет?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39869447
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий,

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

Вопрос можно ли использовать toBcd хоть как-то для TBcd?
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39869453
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
30.09.2019 18:53, Симонов Денис пишет:
> я bcd в delphi не трогал. Но судя по тому что пишут в интернетах там какая-то вакханалия.

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

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

вопрос в том, на какую структуру оно опирается.
судя по декларации которую ты привёл, это не FMTBcd из C++
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39871704
Gorynich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
select sum(0.0)
from rdb$database
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39871706
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
04.10.2019 15:07, Gorynich пишет:
> select sum(0.0)
> from rdb$database

- шо это было?
- антоновка...
(С)
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39871709
Gorynich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сервер - fb 4.0.0.1621-0_x64
IBE - 2019.9.29.1

Результат запроса
Код: sql
1.
2.
select sum(0.0)
from rdb$database


имеет тип NUMERIC(38,1), но представляется "как текст", с неправильным десятичным разделителем.
Можно разделитель изменить?
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39871729
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
04.10.2019 15:14, Gorynich пишет:
> имеет тип NUMERIC(38,1)

вопрос из зала: оно что же, теперь все агрегаты к NUMERIC(38, x)
приводить будет?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39871846
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gorynich,

а чем он неправильный? Точка как точка или ты запятую желаешь?
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39871849
Gorynich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов ДенисGorynich,

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

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



В моем же случае результат
Код: plaintext
1.
2.
3.
0.0   0,0

SUM NUMERIC(38,1),
CONSTANT NUMERIC(18,1)
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39872268
mvb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Db Comparer ругается, если в процедуре расширенный вариант HASH:
Код: sql
1.
2.
3.
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)
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39872397
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mvbDb Comparer ругается, если в процедуре расширенный вариант HASH:

Компарер еще почти ничего не знает про синтаксис четверки.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39872398
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GorynichМожно разделитель изменить?

Можно, наверное.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39872432
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий04.10.2019 15:14, Gorynich пишет:
> имеет тип NUMERIC(38,1)

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


у тебя есть другие предложения? Когда считаем SUM или AVG трудно угадать сколько там реально записей будет в выборки, поэтому чтобы случайно не получить переполнение выдаём наиболее вместимый тип в prepare. Если это может поломать совместимость со старым клиентом, то просто делай BIND INT128 на BIGINT.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39877968
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В свежей версии сделана сортировка в гриде по DECFLOAT и NUMERIC(38,x) полям, агрегаты там же (пока только по NUMERIC(38,x)), частичная поддержка DECFLOAT и NUMERIC(38,x) в отладчике.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39878255
Gorynich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpertGorynichМожно разделитель изменить?

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

В предыдущей версии (или мне показалось?) десятичный разделитель был изменен на системный. Но в 2019.10.18.1 вернулась точка вместо зяпятой (для моих региональных настроек системы).
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39878583
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GorynichВ предыдущей версии (или мне показалось?) десятичный разделитель был изменен на системный. Но в 2019.10.18.1 вернулась точка вместо зяпятой (для моих региональных настроек системы).

Бажок, исправлю.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39944492
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

добавь ключевое слово LATERAL для подсветки пожалуйста. В последней версии 4.0 это поддерживается.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39945154
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис

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


А что это?
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39945169
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

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

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

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

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

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
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



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

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
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



А вот это выведет всех лошадей и их последние промеры, если они есть.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39945178
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну вот, не только подсвечивать. Парсер тоже допиливать надо.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39949912
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

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

Это нужно для

README.ddl.txt22) 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.

Вообще не плохо бы ещё какую-то визуальную настройку сделать где можно быстро включить/выключить таблицы для репликации.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39950559
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ещё надо бы добавить поддержку некоторых новых функций

Код: plaintext
1.
2.
3.
MAKE_DBKEY
RDB$GET_TRANSACTION_CN
HEX_ENCODE
HEX_DECODE

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

https://github.com/FirebirdSQL/firebird/blob/master/doc/sql.extensions/README.builtin_functions.txt
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39950780
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис

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


Добавил.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39950781
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис
ещё надо бы добавить поддержку некоторых новых функций

Код: plaintext
1.
2.
3.
MAKE_DBKEY
RDB$GET_TRANSACTION_CN
HEX_ENCODE
HEX_DECODE


Добавил подсветку и хинты.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39967274
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

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

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
Сигнатура проблемы:
  Имя события проблемы:	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
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39967275
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

мне кажется это потому что, в снапшотах IUtil правили
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39969190
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис

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


А чего там направили, если вкратце?
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39969215
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

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

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

Скорее всего надо просто пересобрать с новым Firebird.pas
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39969238
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис
Выкинули 2 метода которые преобразовывали хендлы в IAttechment, ITransaction, и разместили их в отдельные функции. Плюс номер версии интерфейса поправили


Ну молодцы, чо. Номер версии как был 4, так и остался. Зато теперь getInt128 живет по другому адресу, и на попытке его дернуть все и сыпется. Могли бы и оставить эти несколько байт в таблице.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39969244
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

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

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

я имел ввиду при генерации firebird.pas через клопа. Если ты его не используешь, то должно быть всё равно.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39969256
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подрихтовал IUtils у себя. Теперь, видимо, падать будет у тех, кто не самым свежим снапшотом пользуется.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39969320
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

спасибо.

Им проще ответить: обновитесь до текущего снапшота, API поменялся.
Вон Beta 1 -> Beta 2 ODS поменялось, и пришлось b/r делать
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39973391
Фотография CyberMax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. Парсер не понимает конструкции типа "SET BIND OF INT128 TO LEGACY;" в триггере.
2. Не выделяются жирным новые незарезерированные слова: BIND и LEGACY, хотя другие выделяются. Видимо, потому что их добавили в Beta 2.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39973414
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CyberMaxПарсер не понимает конструкции типа "SET BIND OF INT128 TO LEGACY;" в триггере.

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

IBExpert,

кстати надо бы теперь ещё и отдельный тип INT128 добавить в редакторы таблиц, ХП, функций
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39973418
Фотография CyberMax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис
ясен пень INT128 только позавчера добавили

Это как пример было. Он и "SET BIND OF NUMERIC(38) TO LEGACY" не понимает.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39973441
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CyberMaxSET BIND OF NUMERIC(38) TO LEGACY

дык вот это в последнем снапшоте больше не поддерживается. INT128 он сразу и для всех NUMERIC/DECIMAL/INT128 работает
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39973457
Фотография CyberMax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис,

Я тут вообще-то пишу про парсер IBExpert'а - что он не понимает команду SET BIND внутри триггера, а не про снапшоты сервера.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39973479
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CyberMax

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


Он понимает. BIND и LEGACY тоже подсвечивает.
INT128 пока не понимает, да.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39973549
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис
CyberMaxSET BIND OF NUMERIC(38) TO LEGACY


дык вот это в последнем снапшоте больше не поддерживается. INT128 он сразу и для всех NUMERIC/DECIMAL/INT128 работаетТы в этом уверен ?
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39973556
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvlad,

про не поддерживается я наврал, но именно в этой записи распространяется только на NUMERIC(38, x), где x > 0
C INT128 распространяется на INT128 и все NUNERIC(38, x)
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39977896
mvb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Firebird-4.0.0.2097-0_Win32, сегодняшний
IBExpert 2020.7.7.1, сегодняшний

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

База UTF-8, подключение оно же.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39977897
mvb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и те, что добавлял раньше (пару месяцев назад), стали криво отображаться
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39978326
mvb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЧЯДНТ?
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39978341
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mvb
ЧЯДНТ?


В SQL-редакторе тот же ALTER что выдает?
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39978356
mvb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

вроде, выполняется, но в поле все равно кракозябры
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39978357
mvb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39978358
mvb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
просто запросом работает норм
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39978416
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mvb

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


Исправил. Но к FB 4 это никакого отношения не имеет.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39978576
mvb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

на ФБ 2.5.9 и Win1251 это не вылазит
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39978578
mvb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert
Исправил
IBE последний
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39978580
mvb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
через SQL Editor и SQL script - выполнилось норм
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39978754
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mvb
IBE последний


Послдений - это какой? Должно быть 2020.7.11. 2 .
Только что проверил - все нормально у меня.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39978777
mvb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert, да, именно эта версия.

P.S. Сейчас еще проверил на новом поле - все работает, и добавление и редактирование.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39990419
mvb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На последнем снапшоте 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+ подключается норм.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39990667
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mvb
На последнем снапшоте Firebird-4.0.0.1963-0-Beta2-Win32


Какой же это последний? У меня далеко не последний, и тот уже .2076 RC1.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #39990722
mvb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

да, пардон, не с той ветки скачал ФБ, сейчас все норм. Спасибо!
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #40044213
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
при нажатии перекомпилировать все пакеты, заодно пытается перекомпилировать RDB$TIME_ZONE_UTIL.

Можно ли его исключить из этой процедуры на основании RDB$PACKAGES.RDB$SYSTEM_FLAG = 1
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #40044224
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert не знает функцию из 4.0

Код: plaintext
1.
CRYPT_HASH (str USING <algorithm>)
<algorithm> ::= { MD5 | SHA1 | SHA256 | SHA512 }

для функции EXTRACT подсказка не знает о TIMEZONE_HOUR | TIMEZONE_MINUTE

Код: plaintext
1.
2.
3.
4.
EXTRACT (<part> FROM datetime)
<part> ::=
YEAR | MONTH | WEEK | DAY | WEEKDAY | YEARDAY
| HOUR | MINUTE | SECOND | MILLISECOND
| TIMEZONE_HOUR | TIMEZONE_MINUTE

Не плохо бы ещё подсветить и распознавать контекстную переменную RESETTING

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
CREATE OR ALTER TRIGGER on_connect
ACTIVE ON CONNECT POSITION 0
AS
begin
  IF (RESETTING) THEN
  BEGIN
  -- выполняется сброс сеанса
  END
end
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #40044875
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Исправил. Добавил.
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #40086903
dedRasta
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть сервер Firebird 4.0 и база данных:

Код: plsql
1.
2.
3.
4.
5.
6.
IS_IDK_FB4x32 = d:\Baza4x32\IS_IDK_FB4x32.FDB
{
AuthServer = Srp
AuthClient = Srp, Win_Sspi, Legacy_Auth #Windows clients
UserManager = Srp
}



Служба сервера остановлена.
В iSQL в режиме Embedded БД открывается без проблем:

Код: plsql
1.
2.
3.
D:\Firebird_4_0>isql.exe -ch WIN1251 -u SYSDBA -pas pass IS_IDK_FB4x32
Database: IS_IDK_FB4x32, User: SYSDBA
SQL>




В приложении на Лазарус с IBX в режиме Embedded тоже открывается и работает.
В IBExpert БД открываться не хочет, выдает ошибку:

Сервер, протокол
Local, default

Файл базы данных
IS_IDK_FB4x32

Версия сервера
Firebird 4.0

Файл клиентской библиотеки
D:\Firebird_4_0\fbclient.dll

Error Message:
----------------------------------------
Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements.
Error loading plugin Engine13.
Module D:\Firebird_4_0\plugins/Engine13 exists but can not be loaded.
Не найдена указанная процедура. .
-------------------------------------------------------------------------------------------------------------------
SQLCODE: -901
SQLSTATE: 39000
GDSCODE: 335545004
[0054836B] FIB.IBError (Line 588, "FIB.pas" + 82) + $2
[005426BE] FIBDatabase.TFIBDatabase.Open (Line 1214, "FIBDatabase.pas" + 73) + $9
[00518353] pFIBDatabase.TpFIBDatabase.Open (Line 278, "pFIBDatabase.pas" + 9) + $2
[00542A2D] FIBDatabase.TFIBDatabase.SetConnected (Line 1286, "FIBDatabase.pas" + 4) + $4
[010F389A] IBEDatabases.TIBEDatabase.Connect (Line 3264, "IBEDatabases.pas" + 2) + $10
[0107B6FE] InspectorFm.TInspectorFrame.OpenDatabase (Line 3396, "Frames\InspectorFm.pas" + 44) + $D
[0107652E] InspectorFm.TInspectorFrame.ObjectsTLDblClick (Line 1366, "Frames\InspectorFm.pas" + 11) + $A
[004555C5] Controls.TControl.DoMouseDown (Line 4306, "Controls.pas" + 2) + $21
[00455681] Controls.TControl.WMLButtonDblClk (Line 4331, "Controls.pas" + 5) + $C
[00444388] Forms.StdWndProc (Line 1459, "Forms.pas" + 8) + $0
[0044DB97] Forms.TApplication.ProcessMessage (Line 6630, "Forms.pas" + 13) + $1
[0113A5BA] IBExpert.IBExpert (Line 937, "D:\Projects_5\IBExpert\IBExpert.dpr" + 147) + $7
...
Рейтинг: 0 / 0
Firebird 4. Про него пока пишите сюда.
    #40088941
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dedRasta,

Искал в главном форуме?
https://www.sql.ru/forum/afsearch.aspx?s=Engine13 exists but can not be loaded
...
Рейтинг: 0 / 0
116 сообщений из 116, показаны все 5 страниц
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Firebird 4. Про него пока пишите сюда.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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