aboutsummaryrefslogtreecommitdiffstats
path: root/yql/essentials/docs/ru/syntax/pragma/index.md
blob: 7fd48116dccfd5c0c291f035adee95f73b104560 (plain) (blame)
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
# PRAGMA

## Определение

Прагмы — это специальные директивы, которые переопределяют настройки выполнения запроса. Например, с их помощью можно выбрать стратегию объединения таблиц, настроить уровень логирования ошибок или указать, в каком пуле выполнять операции запроса. Прагмы могут влиять на скорость выполнения запроса, на распределение ресурсов и семантику.

Действие прагм распространяется только в рамках текущего запроса. Подробнее смотри в разделе [область действия прагм](global.md#pragmascope).

### Синтаксис

`PRAGMA x.y = "z";` или `PRAGMA x.y("z", "z2", "z3");`:

* `x` — (опционально) категория настройки.
* `y` — название настройки.
* `z` — (опционально для флагов) значение настройки

За некоторым исключением, значение настроек можно вернуть в состояние по умолчанию с помощью `PRAGMA my_pragma = default;`.

### Примеры

```yql
PRAGMA AutoCommit;
```

```yql
PRAGMA TablePathPrefix = "home/yql";
```

```yql
PRAGMA Warning("disable", "1101");
```

Полный список доступных настроек [см. ниже](#pragmas).

### Доступные прагмы {#pragmas}

* [Глобальные](global.md)
* [Yson](yson.md)
* [Работа с файлами](file.md)
* [Отладочные и служебные](debug.md)