powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / ANN Руководство по языку SQL СУБД Firebird 3.0
25 сообщений из 345, страница 6 из 14
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39014909
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид1) коннект идёт к localhost, а не к другому хосту. При попытке коннекта не к localhost - "your user name / password траляля, идите к вашему сисдбаю"По этому пункту отбой: на удалённой машине был неверно вбит кириллический OS-user, который должен был лезть к ней. Но с malformed string трабла осталась, так что создал CORE-4885
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39014910
ТаблоидКороче, кому интересно - трахайтесь сами с этим trusted auth, "изабэлло" гарантированно )
Имхо это нужно добавить в документацию, в раздел known issues . А то человек прочитает документацию и ему покажется что оно работает всегда. А оно оказывается не всегда.
Я например был бы рад прочитать о всех кnown issues в специальном разделе документации.
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39014922
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
просто мысльТаблоидКороче, кому интересно - трахайтесь сами с этим trusted auth, "изабэлло" гарантированно )
Имхо это нужно добавить в документацию, в раздел known issues . А то человек прочитает документацию и ему покажется что оно работает всегда. А оно оказывается не всегда.
Я например был бы рад прочитать о всех кnown issues в специальном разделе документации.Пока что рано создавать эти самые known issues, т.к. внутри 3.0 еще многое чего может поменяться до её выпуска.
Заскорузлые баги / багофичи смотрите в трекере, ставьте фильтр по project = 'core', issue type = {'Bug', 'Improvement'}, status = 'Open' и, если нужно 'created before'.
ЗЫ. А самое лучшее - поставьте 3.0 у себя и начинайте изгаляться над ней. Время пришло, уже RC1 в снапшотах :-)
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39014958
Таблоидпросто мысльпропущено...

Имхо это нужно добавить в документацию, в раздел known issues . А то человек прочитает документацию и ему покажется что оно работает всегда. А оно оказывается не всегда.
Я например был бы рад прочитать о всех кnown issues в специальном разделе документации.Пока что рано создавать эти самые known issues, т.к. внутри 3.0 еще многое чего может поменяться до её выпуска.
Может и рано, но я совершенно точно предпочёл бы увидеть актуальные кnown issues в документации поставляемой с релизом.
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39014979
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
просто мысль,

3.0 не релиз ещё. Там ставятся в примечание только то что совершенно точно не будет исправлено к релизу.
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39015097
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 таблоид - ты вроде предлагал описать compatibility issues именно для тройки. Возьмешься их хотя бы перечислить? В отдельной ветке или в личке.
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39015117
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitr2 таблоид - ты вроде предлагал описать compatibility issues именно для тройки. Возьмешься их хотя бы перечислить? В отдельной ветке или в личке.попробую; черновик сначала пришлю тебе в личку. Но и Дениса тоже припахать сюда надо, у него в голове больше такой инфы сидит :-)
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39015135
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТаблоидВнутри аналитической функции, например sum( <expr> )over(), выражение <expr> - может быть "просто" агрегатом, см ниже.
И еще: тип возврата - всегда BIGINT, а не "тот же что и аргумент функции expr".

Код: plaintext
1.
2.
3.
4.
5.
SQL> recreate table test(x smallint);
SQL> set sqlda_display on;

SQL> select sum( sum(x) )over() from test;
. . .


вау! Оно даже вот так работает

Код: sql
1.
2.
3.
4.
5.
6.
7.
select
  code_horse,
  avg(height_horse),
  rank() over(order by avg(height_horse)) as r
from measure
where height_horse is not null
group by code_horse



В общем буду думать как это описать. Причём судя по плану сначала делается агрегирование, а потом поверх него уже окно строится. Возьму на заметку. Ибо раньше для таких случаев использовал DT или CTE
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39015607
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоидpg 230Замечание о равенстве

Оператор "=", который явно используется во многих условиях соединении и неявно
в соединениях именованными столбцами и естественных соединениях, только при
сравнении значений со значениями.
В соответствии со стандартом SQL, NULL не
является значением и, следовательно, два значения NULL не равны и ни неравны
друг с другом.В выделенном тексте пропущено какое-то слово. Может, имелось в виду это: "Оператор "=", который <...>, ДАЁТ ОЖИДАЕМЫЙ РЕЗУЛЬТАТ только при сравнении значений со значениями (а не с NULL)" - ?

В оригинале было
авторThe “=” operator, which is explicitly used in many conditional joins and implicitly in named column
joins and natural joins, only matches values to values.

так как ты написал в принципе верно
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39015630
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Решил вот так написать

авторОператор "=", который явно используется во многих условиях соединении и неявно в соединениях именованными столбцами и естественных соединениях, сравнивает только значения со значениями.
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39015678
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Последние два слова ("со значениями") - лишние.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39015727
Фотография DarkMaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прибейте там упоминание про NULL гвоздями - обязательно найдутся умельцы.
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39015732
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DarkMaster,

оно там есть. Абзац полностью звучит так

Замечание о равенствеОператор "=", который явно используется во многих условиях соединении и неявно
в соединениях именованными столбцами и естественных соединениях, сравнивает
только значения со значениями. В соответствии со стандартом SQL, NULL не является
значением и, следовательно, два значения NULL не равны и ни неравны друг с другом.
Если необходимо, чтобы значения NULL соответствовали друг другу при объединении,
используйте оператор IS NOT DISTINCT FROM. Этот оператор возвращает истину,
если операнды имеют то же значение, или, если оба они равны NULL.

Код: sql
1.
2.
3.
SELECT *
FROM A
JOIN B ON A.id IS NOT DISTINCT FROM B.code



это вообще про предложение JOIN
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39015813
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мелочёвка, но таки подправить надо.

Вот тута:267
Код: plaintext
1.
2.
UPDATE target[ [  AS  ]  alias] 
SET col= newval[, col= newval...] 
. . .
- всё хорошо.

А вот тута:275
Код: plaintext
1.
2.
3.
4.
MERGE INTO target[ AS  target_alias] 
USING <source>[ AS  source_alias] 
ON <join condition>
<merge when>[<merge when>...] 
. . .
- не хватает "[" & "]" вокруг "AS", т.к. это слово необязательное везде и всегда.
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39015818
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По mon$attachments, mon$memory_usage, mon$io_stats, mon$record_stats и появившейся в 3.0 таблице mon$table_stats можно закинуть в доку пару примеров ? Они мне зело помогли, когда искал buttleneck'и в oltp-emul тесте:
1. Снимок с детализацией по таблицам:
Код: sql
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.
select
        t.mon$table_name
        ,r.mon$record_inserts
        ,r.mon$record_updates
        ,r.mon$record_deletes
        ,r.mon$record_backouts
        ,r.mon$record_purges
        ,r.mon$record_expunges
        -----------
        ,r.mon$record_seq_reads
        ,r.mon$record_idx_reads
        ,r.mon$record_rpt_reads
        ,r.mon$backversion_reads
        ,r.mon$fragment_reads
        -----------
        ,r.mon$record_locks
        ,r.mon$record_waits
        ,r.mon$record_conflicts
        ------------
        ,a.mon$stat_id
    from mon$record_stats r
    join mon$table_stats t on r.mon$stat_id = t.mon$record_stat_id
    join mon$attachments a on t.mon$stat_id = a.mon$stat_id
    where
        a.mon$attachment_id = current_connection
    ;



2. Снимок обобщённых данных по текущему коннекту (БЕЗ детализации по таблицам):
Код: sql
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.
select
        -- mon$io_stats:
         i.mon$page_reads
        ,i.mon$page_writes
        ,i.mon$page_fetches
        ,i.mon$page_marks
        -- mon$record_stats:     
        ,r.mon$record_inserts
        ,r.mon$record_updates
        ,r.mon$record_deletes
        ,r.mon$record_backouts
        ,r.mon$record_purges
        ,r.mon$record_expunges
        ,r.mon$record_seq_reads
        ,r.mon$record_idx_reads
    
        ,r.mon$record_rpt_reads
        ,r.mon$backversion_reads
        ,r.mon$fragment_reads
    
        ,r.mon$record_locks
        ,r.mon$record_waits
        ,r.mon$record_conflicts
        ------------------------
        ,u.mon$memory_used
        ,u.mon$memory_allocated
        ,a.mon$stat_id
        ,a.mon$server_pid
    from mon$attachments a
    left join mon$memory_usage u on a.mon$stat_id=u.mon$stat_id
    left join mon$io_stats i on a.mon$stat_id=i.mon$stat_id     
    left join mon$record_stats r on a.mon$stat_id=r.mon$stat_id     
    where     
      a.mon$attachment_id = current_connection
   ;
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39018249
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
194Параметры оператора SET GENERATOR
seq_name Имя последовательности (генератора).
new_val Новое значение последовательности (генератора). 64 битное целое в
диапазоне от -2^63..2^63 + 1Денис, подправь, плз: макс. bigint есть 2^63 - 1 (9,223,372,036,854,775,807)
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39018253
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид,

попправлю
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39018271
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
624Пример E.8. Получение уровня изолированности текущей
транзакций
Код: plaintext
1.
2.
SELECTMON$ISOLATION_MODE
FROMMON$TRANSACTIONS
WHEREMON$TRANSACTION_ID = CURRENT_TRANSACTION
"Вредный" пример, ибо за ним будут лезть и копипастить в код и грузить бедный сервак лишним запросом к mon$ :-)
А между тем, уровень изолированности определять лучше так:
Код: plaintext
rdb$get_context('SYSTEM','ISOLATION_LEVEL')

Лучше записать в доку запрос типа "отобрать инфу по всем аттачам, которые стартовали транзакции с режимом, отличающимся от RO/RC"
Код: sql
1.
2.
3.
4.
select a.* 
from mon$attachments a 
join mon$transactions t using (mon$attachment_id) 
where NOT (t.mon$read_only=1 and t.mon$isolation_mode>=2 );
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39018277
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид,

можно и такой.

Ты мне вот что скажи

CORE-4881Increase maximum string literal length to 64K (bytes) while setting a lower limit (of characters) for multibyte charsets based on their max char. length (UTF-8 literals will be limited to 16383 characters)
опять трекер в дауне

Это реально только для литералов? Что там с CHAR/VARCHAR переменными и столбцам таблиц?
Снапшоты под винду сейчас не строятся, пока сам проверить не могу.
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39018571
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис,

только для литералов
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39019730
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
383Параметры функции SUBSTRING
str Выражение строкового типа.
startpos Позиция, с которой начинается извлечение подстроки
Целочисленное выражение.
length Длина возвращаемой подстроки. Целочисленное выражение. Какое именно целочисленное ? У мну получается, что только до 2^31-1 там всё пучком, а дальше -
Код: plaintext
1.
2.
Statement failed, SQLSTATE = 22003
arithmetic exception, numeric overflow, or string truncation
-numeric value is out of range

Так что, если не будет сбацано , то лучше правду там писать: int, и не более :-)
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39019741
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоидлучше правду там писать: int
Ты не поверишь, но "int" и есть "целое".
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39019743
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид,

а дальше BLOB пока размер больше не может быть
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39019758
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

а smallint, bigint - чо, дробные ?
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39019759
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Дениса дальше BLOB пока размер больше не может бытьМожет. Тест сделай, как я в тикете написал.
...
Рейтинг: 0 / 0
25 сообщений из 345, страница 6 из 14
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / ANN Руководство по языку SQL СУБД Firebird 3.0
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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