Skip to content
Snippets Groups Projects

create_table.md: add PRIMARY KEY next to column

Merged Artur Sabirov requested to merge asabirov/add_column_primary_key into main
Files
3
@@ -14,7 +14,7 @@ RPC API используется в следующих сценариях:
- Инстансы взаимодействуют друг с другом под служебной учетной записью
`pico_service`
- Тестирование pytest использует для подключения клиент tarantool-python
- Подключение `picodata connect` использует вызов [.proc_sql](#proc_sql)
- Подключение `picodata connect` использует вызов [.proc_sql_dispatch](#proc_sql_dispatch)
<!-- - Синтаксис вызова из Lua: `box.func[".proc_version_info"]:call()` -->
<!-- - Команда `picodata expel` использует вызов [.proc_expel_instance](#proc_expel_instance) -->
@@ -63,18 +63,23 @@ fn proc_version_info() -> VersionInfo
[semver]: https://semver.org/
--------------------------------------------------------------------------------
### .proc_sql {: #proc_sql }
### .proc_sql_dispatch {: #proc_sql_dispatch }
```rust
fn proc_sql(query, options) -> Result
fn proc_sql_dispatch(pattern, params, id, traceable) -> Result
```
Выполняет распределенный SQL-запрос.
Аргументы:
- `query`: (MP_STR) запрос SQL
- `options`: (optional MP_MAP) TODO
- `pattern`: (MP_STR) запрос SQL
- `params`: (MP_ARRAY) параметры для подставления в `pattern` в случае
[параметризованного запроса][parametrization]
- `id`: (optional MP_STR) id SQL запроса,
используется для идентификции запроса в таблицах статистики
- `traceable`: (optional MP_BOOL) включение отслеживания статистики запроса.
запрос попадёт в таблицы статистики с вероятностью 1% при `false` и 100% при `true`
Возвращаемое значение:
@@ -97,6 +102,8 @@ fn proc_sql(query, options) -> Result
- [Инструкции и руководства — Работа с данными SQL](../tutorial/sql_examples.md)
[parametrization]: ../reference/sql/parametrization.md
## Service API {: #service_api }
--------------------------------------------------------------------------------
@@ -173,6 +180,38 @@ fn proc_runtime_info() -> RuntimeInfo
<br>поле отсутствует в ответе если инстанс запущен без параметра
[picodata run --http-listen](../reference/cli.md#run_http_listen)
--------------------------------------------------------------------------------
### .proc_sql_execute {: #proc_sql_execute }
```rust
fn proc_sql_execute(..) -> Result
```
Выполняет часть плана SQL-запроса на локальном инстансе.
Аргументы:
Сериализованный план запроса.
Возвращаемое значение:
- (MP_MAP `DqlResult`) при чтении данных
<br>Поля:
- `metadata` (MP_ARRAY), массив описаний столбцов таблицы в формате
`MP_ARRAY [ MP_MAP { name = MP_STR, type = MP_STR }, ...]`
- `rows` (MP_ARRAY), результат выполнения читающего запроса в формате
`MP_ARRAY [ MP_ARRAY row, ...]`
- (MP_MAP `DmlResult`) при модификации данных
<br>Поля:
- `row_count` (MP_INT), количество измененных строк
Для более высокоуровневого RPC смотрите [.proc_sql_dispatch](#proc_sql_dispatch)
[bincode]: https://github.com/bincode-org/bincode
--------------------------------------------------------------------------------
### .proc_raft_promote {: #proc_raft_promote }
Loading