powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / ANN Руководство по языку SQL СУБД Firebird 3.0
25 сообщений из 345, страница 7 из 14
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39019775
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоида smallint, bigint - чо, дробные ?
Они так, погулять вышли.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39019785
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид,

тут есть кое-что про блобы >2G

http://firebirder.ru/firebird_and_large_blob#comments

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

Согласен. Но вот обрабатывать их строковыми функциями, особенно SUBSTRING ... Даже если это сделают, то только спровоцирует некоторых, которые потом будут жаловаться на дикие тормоза, когда FB уйдёт в своп.

Хотя для CHAR_LENGTH, BIT_LENGTH и OCTET_LENGTH выходной результат теперь BIGINT, но они по крайней мере не создают новый BLOB
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39019827
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денистолько спровоцирует некоторых, которые потом будут жаловаться на дикие тормоза, когда FB уйдёт в свопЭто будут _ИХ_ проблемы, а не ФБ. Если в СУБД явно не запрещено создавать такие блобы, то почему должны быть запрещены вспомогательные операции с ними ? Давайте тогда вообще запретим конкатенацию blob-переменных, а то ведь она тоже "временные пухлости" в базе создаёт. Или вообще запросы с кросс-джойнами отменим, а то ФБ тормозить начнёт :)
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39019948
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Обновил документацию
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39020340
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов ДенисОбновил документациюА ты будешь что-нить менять в доке по вот этим вопросам (про оконные ф-ции и юзание внутри их агрегатов, про rank() etc):
http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1155625&msg=17923351
http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1155625&msg=17928739
http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1155625&msg=17923477
http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1155625&msg=17923528

- ?

И еще.32Строковые литералы
Строковые литералы могут содержать произвольные символы . Весь литерал
заключается в апострофы. Апостроф внутри символьного литерала должен
повторяться два раза, чтобы отличить его от признака завершения литерала.
Максимальная длина строкового литерала составляет 64 КБайт .1) Бравур на тему "произвольные символы" слегка настораживает. Ты ведь при чарсете коннекта = win1251 не воткнёшь символ евро в литерал ? Т.е. я к тому, что надо про чарсет коннекта упомянуть. Кроме того, создать литералы такой длины в мультибайтовой кодировке не удастся. Например, unicode-строка, в которой все символы требуют для кодирования три байта, может создана только до 16383 символов, и это будет 49149 октета (а не "64 Кбайт").
2) Точное значение максимального числа октетов, которые можно затолкать в строковый литерал, равно 65535, т.к. это 2^16-1. Лучше записать именно это число, а не "64 КБайт".
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39020364
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТаблоидА ты будешь что-нить менять в доке по вот этим вопросам (про оконные ф-ции и юзание внутри их агрегатов, про rank() etc):
http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1155625&msg=17923351
http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1155625&msg=17928739
http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1155625&msg=17923477
http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1155625&msg=17923528


да. Но про агрегаты внутри окна я ещё не решил куда воткнуть, точно не в описание агрегатных функций. Пока там есть одно изменение. см. секцию "Оконные (аналитические) функции", где расписаны параметры и написано что использовать агрегаты можно. Это бы снабдить примерчиком конечно. Но я думаю один пример мало чем поможет, там очень много ограничений на этот счёт, когда этот агрегат не сам по себе, а с предложением GROUP BY, что гораздо полезнее. Вот здесь надо бы уже пару абзацов написать, когда это позволяется, а когда нет, и про то что агрегатная функция будет выполнена раньше построения окна.

ТаблоидИ еще.32Строковые литералы
Строковые литералы могут содержать произвольные символы . Весь литерал
заключается в апострофы. Апостроф внутри символьного литерала должен
повторяться два раза, чтобы отличить его от признака завершения литерала.
Максимальная длина строкового литерала составляет 64 КБайт .1) Бравур на тему "произвольные символы" слегка настораживает. Ты ведь при чарсете коннекта = win1251 не воткнёшь символ евро в литерал ? Т.е. я к тому, что надо про чарсет коннекта упомянуть. Кроме того, создать литералы такой длины в мультибайтовой кодировке не удастся. Например, unicode-строка, в которой все символы требуют для кодирования три байта, может создана только до 16383 символов, и это будет 49149 октета (а не "64 Кбайт").
2) Точное значение максимального числа октетов, которые можно затолкать в строковый литерал, равно 65535, т.к. это 2^16-1. Лучше записать именно это число, а не "64 КБайт".

По поводу произвольных символов. Там довольно много вариантов. Если этот литерал посылается с клиента, то да символы ограничены чарсетом коннекта. А вот внутри ХП ты можешь разные кодировки применять. Да и вообще указывать кодировку по месту. Так что лучше здесь оставить как есть.

По поводу 64K, наверное проще действительно написать 65535 байт. Про количество символов лучше не писать. Это и так разжёвывается чуть выше, где говорится о кодировках.
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39020396
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов ДенисЕсли этот литерал посылается с клиента, то да символы ограничены чарсетом коннекта. А вот внутри ХП ты можешь разные кодировки применять. Да и вообще указывать кодировку по месту.
внутри ХП литерал может использовать только символы чарсета, в каком эта ХП создавалась. Либо да, указать "по месту".

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

да так будет лучше всего
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39021160
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
обновил документацию.
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39024677
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоидpg 310BEGIN ... END
. . .
Блоки могут быть вложенными, глубина вложения не ограничена.я бы не был столь категоричен :-)


Адриано решил ограничить вложенность 512 уровнями. Добавлено в документацию.
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39038779
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мелочь:pg 350 Параметры оператора POST_EVENT SHADOW
event_name Имя события, ограничено 64 символами.
Описание:
Оператор POST_EVENT сообщает о событии менеджеру событий, который сохраняет
его в таблице событий.Очепятка какая-то, видимо из-за копипаста. 'SHADOW' тут как-то странновато выглядит... ;-)
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39040074
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид,

поправил
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39042841
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
добавлены изменения из последнего снапшота, касающиеся DDL триггеров
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39043676
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1425. Триггеры на события ALTER и DROP обычно не запускаются. Если объект не
существует. Исключения описаны в пункте 6.Напомнило что-то: "я тебя потом... поцелую... если захочешь..." ( к/ф ) - запятую бы надо перед "если"... :-)
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39043682
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоидзапятую бы надо перед "если"...
Получится ещё хуже: "иногда они запускаются даже если объект не существует". А это уже
прямая дорога в трекер.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39043688
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1428. Для упакованных процедур и функций не запускаются индивидуальные триггеры
{CREATE | ALTER | DROP} {PROCEDURE | FUNCTION}.- может, лучше так: "для процедур и функций в составе пакетов ", т.е. как в доке:doc\sql.extensions\README.ddl_triggers.txt 8) Packaged procedures and triggers do not fire individual {CREATE | ALTER | DROP} {PROCEDURE | FUNCTION} triggers.
- ?
А то что-то про архиваторы и степень компрессии мысли идут... :-)
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39043689
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид,

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

я ещё изменения вносил по поводу размера страницы по умолчанию в CREATE DATABASE. Теперь она 8192. Вроде больше она нигде всплыть не должна.
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39043721
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов ДенисДолжно быть "если объект не существует, то триггеры на события ALTER и
DROP не запускаются. ..."
Кэп, а ты уже написал, что для DELETE и UPDATE, которые не изменили ни одной строчки,
триггера тоже не запускаются?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39043751
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

это Адриано написал вообще-то. Предложение имеет смысл для операторов CREATE OR ALTER и RECREATE.
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39043755
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

на самом деле со следующим пунктом звучит вполне нормально


5. Если объект метаданных не существует, то обычно триггеры на события ALTER и DROP не запускаются. Исключения описаны в пункте 6.

6. Исключением из правила 5 являются BEFORE ALTER/DROP USER триггеры, которые будут вызваны, даже если имя пользователя не существует. Это вызвано тем, что эти команды выполняются для базы данных безопасности, для которой не делается проверка существования пользователей перед их выполнением. Данное поведение, вероятно, будет отличаться для встроенных пользователей, поэтому не пишите код, который зависит от этого.
...
Рейтинг: 0 / 0
ANN Руководство по языку SQL СУБД Firebird 3.0
    #39043757
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид,

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


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