# SQL-запросы (Запросы к БД)

### Работа с SQL-запросами

Данное руководство поможет вам разобраться с настройкой баз данных, созданием SQL-запросов и их использованием в сценариях на платформе.

<div class="translate-tooltip-mtz translator-hidden" id="bkmrk-"><div class="translated-text"><div>---

</div></div></div>### **1. Работа с базами данных**

#### **1.1. Просмотр списка баз данных**

[![image.png](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2025-01/scaled-1680-/9rsimage.png)](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2025-01/9rsimage.png)

<div class="translate-tooltip-mtz translator-hidden" id="bkmrk-%D0%9F%D0%B5%D1%80%D0%B5%D0%B9%D0%B4%D0%B8%D1%82%D0%B5-%D0%B2-%D1%80%D0%B0%D0%B7%D0%B4%D0%B5%D0%BB-%22"><div class="translated-text">1. Перейдите в раздел **"Базы данных"**.
2. На странице отображается список подключённых баз данных:
    
    
    - Статус подключения (например, "Подключена" или "Ошибка") отображает текущее состояние доступа к базе данных.
    - Если статус "Ошибка", попробуйте обновить статусы подключений. Если ошибка сохраняется, проверьте настройки базы данных.
3. Для добавления новой базы данных нажмите кнопку **"Добавить базу данных"**.

</div></div>#### **1.2. Добавление новой базы данных[![image.png](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2025-01/scaled-1680-/t5timage.png)](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2025-01/t5timage.png)**

<div class="translate-tooltip-mtz translator-hidden" id="bkmrk-%D0%9D%D0%B0%D0%B6%D0%BC%D0%B8%D1%82%D0%B5-%D0%BA%D0%BD%D0%BE%D0%BF%D0%BA%D1%83-%22%D0%94%D0%BE%D0%B1%D0%B0"><div class="translated-text">1. Нажмите кнопку **"Добавить базу данных"**.
2. Введите следующие параметры:
    
    
    - Название базы данных.
    - Тип базы данных (например, Oracle, MySQL, PostgreSQL).
    - Хост, порт, имя пользователя, пароль и имя базы данных.
3. Нажмите кнопку **"Добавить базу данных"** для сохранения.
4. После добавления база появится в списке. Убедитесь, что статус подключения отображается как "Подключена".

</div></div>#### **1.3. Настройка базы данных**

[![image.png](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2025-01/scaled-1680-/Pg7image.png)](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2025-01/Pg7image.png)

<div class="translate-tooltip-mtz translator-hidden" id="bkmrk-%D0%9D%D0%B0%D0%B6%D0%BC%D0%B8%D1%82%D0%B5-%D0%BD%D0%B0-%D0%B8%D0%BA%D0%BE%D0%BD%D0%BA%D1%83-%D0%BF%D0%B0"><div class="translated-text">1. Нажмите на иконку параметров (шестерёнка) напротив нужной базы данных в списке.
2. Откроется модальное окно с параметрами базы данных:
    
    
    - Вы можете изменить название, тип базы данных, хост, порт, имя пользователя, пароль и имя базы данных.
    - Для сохранения изменений нажмите **"Сохранить изменения"**.
3. Для удаления базы данных нажмите кнопку **"Удалить базу данных"**.
    
    
    - Если база данных используется в запросах, система уведомит вас о невозможности удаления и покажет список связанных запросов.

</div></div><div class="translate-tooltip-mtz translator-hidden" id="bkmrk--3"><div class="translated-text"><div>---

</div></div></div>### **2. Работа с SQL-запросами**

#### **2.1. Просмотр списка SQL-запросов**

[![image.png](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2025-01/scaled-1680-/siQimage.png)](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2025-01/siQimage.png)

<div class="translate-tooltip-mtz translator-hidden" id="bkmrk-%D0%9F%D0%B5%D1%80%D0%B5%D0%B9%D0%B4%D0%B8%D1%82%D0%B5-%D0%B2-%D1%80%D0%B0%D0%B7%D0%B4%D0%B5%D0%BB-%22-1"><div class="translated-text">1. Перейдите в раздел **"SQL-запросы"**.
2. На странице отображается список всех созданных SQL-запросов:
    
    
    - Колонка "Базы данных и сценарии" отображает, к каким базам данных и в каких сценариях использован запрос.
    - Используйте поле поиска для поиска запросов по названию.
    - Вы можете фильтровать запросы по базам данных или сценариям.
3. Для создания нового SQL-запроса нажмите кнопку **"Создать SQL-запрос"**.

</div></div>#### **2.2. Создание SQL-запроса**

[![image.png](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2025-01/scaled-1680-/qlSimage.png)](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2025-01/qlSimage.png)

<div class="translate-tooltip-mtz translator-hidden" id="bkmrk-%D0%9D%D0%B0%D0%B6%D0%BC%D0%B8%D1%82%D0%B5-%D0%BA%D0%BD%D0%BE%D0%BF%D0%BA%D1%83-%22%D0%A1%D0%BE%D0%B7%D0%B4"><div class="translated-text">1. Нажмите кнопку **"Создать SQL-запрос"**.
2. В открывшемся редакторе выполните следующие действия:
    
    
    - В разделе **"Основные данные"** укажите название запроса и выберите базу данных из выпадающего списка.
    - В разделе **"SQL-запрос"** введите текст SQL-запроса.
    - После этого доступно сохранение запроса, но сохранять запрос без успешного получения результата крайне не рекомендуется, потому что это может привести к ошибкам в реальных диалогах при использовании такого запроса в сценарии впоследствии.
    - В разделе **"Переменные во входных параметрах"**, если такие есть, добавьте параметры запроса:
        
        
        - Укажите имя переменной.
        - Задайте тип переменной ("Число" или "Строка").
3. Для проверки запроса нажмите кнопку **"Получить результаты"**:
    
    
    - Отобразятся результаты выполнения запроса.
    - Убедитесь, что запрос выполняется корректно, и результаты соответствуют ожидаемым.
4. Нажмите кнопку **"Сохранить запрос"** для завершения.

</div></div>#### **2.3. Редактирование SQL-запроса**

[![image.png](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2025-01/scaled-1680-/IWYimage.png)](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2025-01/IWYimage.png)

<div class="translate-tooltip-mtz translator-hidden" id="bkmrk-%D0%94%D0%BB%D1%8F-%D1%80%D0%B5%D0%B4%D0%B0%D0%BA%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F-%D1%81"><div class="translated-text">1. Для редактирования существующего запроса выберите его из списка и нажмите на его название.
2. Внесите изменения в открывшемся редакторе.
3. Нажмите кнопку **"Сохранить запрос"** для сохранения изменений.

</div></div>#### **2.4. Удаление SQL-запроса**

<div class="translate-tooltip-mtz translator-hidden" id="bkmrk-%D0%9D%D0%B0%D0%B6%D0%BC%D0%B8%D1%82%D0%B5-%D0%B8%D0%BA%D0%BE%D0%BD%D0%BA%D1%83-%D1%83%D0%B4%D0%B0%D0%BB%D0%B5"><div class="translated-text">1. Нажмите иконку удаления рядом с запросом в списке.
2. Если запрос используется в сценариях, система уведомит вас о невозможности удаления и покажет список связанных сценариев. Удалите ссылки на запрос из сценариев в блоках "Выполнить SQL-запрос", чтобы завершить удаление.
    
    [![image.png](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2025-01/scaled-1680-/3fRimage.png)](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2025-01/3fRimage.png)

<div>---

</div></div></div>### **3. Использование SQL-запросов в сценариях**

#### **3.1. Добавление блока "Выполнить SQL-запрос"**

<div class="translate-tooltip-mtz translator-hidden" id="bkmrk-%D0%9F%D0%B5%D1%80%D0%B5%D0%B9%D0%B4%D0%B8%D1%82%D0%B5-%D0%B2-%D1%80%D0%B5%D0%B4%D0%B0%D0%BA%D1%82%D0%BE%D1%80"><div class="translated-text">1. Перейдите в редактор сценариев.
2. Щелкните правой кнопкой мыши по рабочему пространству и выберите **"Выполнить SQL-запрос"**.

</div></div>#### **3.2. Настройка блока**

<div class="translate-tooltip-mtz translator-hidden" id="bkmrk-%D0%92%D1%8B%D0%B1%D0%B5%D1%80%D0%B8%D1%82%D0%B5-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%B9-s"><div class="translated-text">1. Выберите созданный SQL-запрос из выпадающего списка.
2. Настройте входные параметры:
    
    
    - Для каждого параметра выберите переменную сценария, которая будет передавать значение.
3. Настройте результаты запроса:
    
    
    - Для каждого возвращаемого значения выберите переменную, которая будет использоваться в сценарии.

</div></div><table border="1" id="bkmrk-%E2%84%96-%D0%94%D0%B5%D0%B9%D1%81%D1%82%D0%B2%D0%B8%D0%B5-%D0%A1%D0%BA%D1%80%D0%B8%D0%BD-1-%D0%9D" style="border-collapse: collapse; width: 100%; height: 746.014px; border-width: 1px; border-color: #DBDBF8;"><colgroup><col style="width: 34px;" width="34"></col><col style="width: 388px;" width="388"></col><col style="width: 248px;" width="248"></col></colgroup><tbody><tr style="height: 35.3906px;"><td style="border-width: 1px; height: 35.3906px; background-color: rgb(246, 246, 253); border-color: rgb(219, 219, 248);">**№**

</td><td style="border-width: 1px; height: 35.3906px; background-color: rgb(246, 246, 253); border-color: rgb(219, 219, 248);">**Действие**

</td><td style="border-width: 1px; height: 35.3906px; background-color: rgb(246, 246, 253); border-color: rgb(219, 219, 248);">**Скрин**

</td></tr><tr style="height: 92.3906px;"><td style="border-width: 1px; height: 92.3906px; border-color: rgb(219, 219, 248);">1

</td><td style="border-width: 1px; height: 92.3906px; border-color: rgb(219, 219, 248);">Нажмите ПКМ по рабочему пространству и в появившемся списке **выберите блок** «Отправить запрос в базу»

</td><td style="border-width: 1px; height: 92.3906px; border-color: rgb(219, 219, 248);">[![image.png](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2023-10/scaled-1680-/671image.png)](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2023-10/671image.png)

</td></tr><tr style="height: 209.812px;"><td style="border-width: 1px; height: 209.812px; border-color: rgb(219, 219, 248);">2

</td><td style="border-width: 1px; height: 209.812px; border-color: rgb(219, 219, 248);">В правом боковом меню в выпадающем списке **выбираем наш созданный запрос**

</td><td style="border-width: 1px; height: 209.812px; border-color: rgb(219, 219, 248);">[![image.png](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2023-10/scaled-1680-/bWcimage.png)](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2023-10/bWcimage.png)

</td></tr><tr style="height: 85.25px;"><td style="border-width: 1px; height: 85.25px; border-color: rgb(219, 219, 248);">3

</td><td style="border-width: 1px; height: 85.25px; border-color: rgb(219, 219, 248);">После выбора запроса в разделе «Входные параметры» как раз-таки появляется параметр, который мы добавляли (параметр, который будет передан в запрос)

</td><td style="border-width: 1px; height: 85.25px; border-color: rgb(219, 219, 248);">[![image.png](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2023-10/scaled-1680-/N8kimage.png)](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2023-10/N8kimage.png)

</td></tr><tr style="height: 132.734px;"><td style="border-width: 1px; height: 132.734px; border-color: rgb(219, 219, 248);">4

</td><td style="border-width: 1px; height: 132.734px; border-color: rgb(219, 219, 248);">**Присваиваем ему переменную** сценария «phone» (как создать переменную в сценарии читайте на странице[ «Работа с переменными»](https://docs.ai-assistant.is74.ru/books/redaktor-scenariev/page/rabota-s-peremennymi))

  
Таким образом, мы передаем значение переменной из сценария в наш запрос

</td><td style="border-width: 1px; height: 132.734px; border-color: rgb(219, 219, 248);">[![image.png](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2023-10/scaled-1680-/mYJimage.png)](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2023-10/mYJimage.png)

</td></tr><tr style="height: 119.359px;"><td style="border-width: 1px; height: 119.359px; border-color: rgb(219, 219, 248);">5

</td><td style="border-width: 1px; height: 119.359px; border-color: rgb(219, 219, 248);">Нажимаем на вкладку **«Результаты запроса»** и видим, что наш запрос возвращает столбец «user\_id»

  
Теперь **также выбираем/создаем переменную** из сценария, которой мы присвоим возвращаемое sql-запросом значение

</td><td style="border-width: 1px; height: 119.359px; border-color: rgb(219, 219, 248);">[![image.png](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2023-10/scaled-1680-/uPVimage.png)](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2023-10/uPVimage.png)

</td></tr><tr style="height: 71.0781px;"><td style="border-width: 1px; height: 71.0781px; border-color: rgb(219, 219, 248);">6

</td><td style="border-width: 1px; height: 71.0781px; border-color: rgb(219, 219, 248);">**Сохраняем блок**

</td><td style="border-width: 1px; height: 71.0781px; border-color: rgb(219, 219, 248);">[![image.png](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2023-10/scaled-1680-/e50image.png)](https://docs.ai-assistant.is74.ru/uploads/images/gallery/2023-10/e50image.png)

</td></tr></tbody></table>

#### **3.3. Проверка и сохранение сценария**

<div class="translate-tooltip-mtz translator-hidden" id="bkmrk-%D0%A3%D0%B1%D0%B5%D0%B4%D0%B8%D1%82%D0%B5%D1%81%D1%8C%2C-%D1%87%D1%82%D0%BE-%D0%B2%D1%81%D0%B5-%D0%B2"><div class="translated-text">1. Убедитесь, что все входные параметры и результаты настроены корректно.
2. Сохраните изменения сценария.

<div>---

</div></div></div>### **4. Советы и рекомендации**

<div class="translate-tooltip-mtz translator-hidden" id="bkmrk-%D0%A2%D0%B5%D1%81%D1%82%D0%B8%D1%80%D1%83%D0%B9%D1%82%D0%B5-%D0%B7%D0%B0%D0%BF%D1%80%D0%BE%D1%81%D1%8B-%D0%BE"><div class="translated-text">- **Тестируйте запросы отдельно перед сохранением в редакторе SQL-запросов:** это поможет избежать ошибок при настройке сценария.
- **Следите за статусом подключения баз данных:** корректная работа SQL-запросов зависит от доступности баз данных.
- **Используйте понятные названия переменных:** это упростит их использование в сценариях.

<div>---

</div></div></div>### **Примечание**

*Для дополнительной информации по настройке блоков сценариев ознакомьтесь с разделом "[Редактор сценариев](https://docs.ai-assistant.is74.ru/books/redaktor-scenariev)" в документации.*