# Форматировщик Db2

Форматируйте IBM Db2 SQL для Db2 for LUW и Db2 for z/OS по правилам Db2 для литералов X'', G'' и N'', идентификаторов в двойных кавычках и имён с символами #, @ и $. FETCH FIRST n ROWS ONLY размещается на отдельной строке, предложения изоляции, например WITH UR, остаются в строке запроса, а ветви MERGE начинаются с новой строки. Для разработчиков баз данных и администраторов БД незакрытые строки и скобки отмечаются с указанием строки и столбца.

## Часто задаваемые вопросы

### Какой синтаксис Db2 распознаётся?

Распознаются строки в одинарных кавычках с удвоенными кавычками, шестнадцатеричные литералы X'', графические G'' и национальные N'', а также строки GX'', UX'' и BX''. Идентификаторы в двойных кавычках и обычные имена, содержащие #, @ или $, сохраняются без изменений.

### Как обрабатывается FETCH FIRST?

FETCH начинается с новой строки, как и LIMIT. Остальная часть предложения, например FIRST 10 ROWS ONLY, остаётся вместе на следующей строке.

### Как обрабатываются WITH UR и другие предложения изоляции?

WITH UR, WITH CS, WITH RS и WITH RR остаются в той же строке, что и предшествующее им предложение. Их никогда не принимают за общее табличное выражение WITH.

### Поддерживается ли MERGE?

Да. Ветви WHEN MATCHED THEN и WHEN NOT MATCHED THEN начинаются с новой строки.

### Можно ли форматировать процедуры SQL PL?

Да. Блоки BEGIN и END с конструкциями IF, CASE и LOOP получают отступы, а операторы внутри размещаются на отдельных строках.

### Сохраняются ли комментарии?

Да. Комментарии -- и блочные комментарии /* ... */ остаются на месте. Для многострочных блочных комментариев отступы обновляются в соответствии с новым форматированием.

### Меняется ли регистр ключевых слов?

Нет. Регистр ключевых слов и имён сохраняется таким, каким вы его указали. База данных всё равно переводит имена Db2 без кавычек в верхний регистр, поэтому смешанный регистр работает.

### Какие ошибки обнаруживаются?

Незакрытые строки, идентификаторы в кавычках и блочные комментарии, а также несбалансированные скобки — для каждого случая указываются строка и столбец. Ничего не отправляется в базу данных.

### Каков максимальный размер входных данных?

До 1 MB на запрос и 128 KB на инструкцию. Длинные скрипты форматируются по одной инструкции за раз.

### Можно ли выбрать отступы и сохраняется ли мой SQL?

Используйте 2 или 4 пробела либо табуляцию. SQL форматируется только в памяти и никогда не сохраняется.

Ваша реклама здесь?

[Напишите нам по электронной почте](mailto:hi@dennn.is?subject=%D0%A0%D0%B5%D0%BA%D0%BB%D0%B0%D0%BC%D0%B0%20%D0%BD%D0%B0%20OneClick%20Pro)

[Реклама Набор плагинов для работы агентов с WordPress.](https://sleekwp.com/?ref=oneclickpro)
