Перейти к содержимому

Выполнить SQL запрос

image_1

Описание

Блок выполняет SQL запрос к базе данных. Запрос требуется указывать в соответствии со стандартным синтаксисом SQL, например:

SELECT * FROM my_table ORDER BY id DESC LIMIT 100;

Описание параметров

Блок имеет несколько основных параметров:

  1. Использовать подключение к базе данных - переменная, в которой хранится подключение к базе данных, которое было создано в блоке Создать подключение к базе данных;

    Тип данных: object (Объект подключения)

    Пример: db_session

  2. SQL запрос - SQL запрос к базе данных;

    Тип данных: str (Строка)

    Пример: CREATE TABLE Employees ( ID INTEGER PRIMARY KEY AUTOINCREMENT, FirstName TEXT NOT NULL, LastName TEXT NOT NULL, Email TEXT, HireDate TEXT );


Возвращаемое значение

  • SELECT (есть столбцы) → возвращается список кортежей list[tuple]:
[(1, 'Alice', 30), (2, 'Bob', 25)]
  • SELECT одного столбца:
[(42,), (7,)]
  • SELECT без результатов -> пустой список:
[]
  • INSERT/UPDATE/DELETE (нет столбцов) → целое число (количество затронутых строк):
3 # затронуто 3 строки
  • DDL (например, CREATE TABLE) → целое число из rowcount (обычно драйвер возвращает информацию как «неизвестно»):
-1 # типично для DDL; у некоторых драйверов может быть 0

Пример использования

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

Запрос на создание таблицы:

CREATE TABLE Employees (
ID INTEGER PRIMARY KEY AUTOINCREMENT,
FirstName TEXT NOT NULL,
LastName TEXT NOT NULL,
Email TEXT,
HireDate TEXT
);

Запрос на вставку данных:

INSERT INTO Employees (FirstName, LastName, Email, HireDate)
VALUES
('Иван', 'Петров', 'ivan.petrov@example.com', '2023-05-15'),
('Мария', 'Сидорова', 'maria.sidorova@example.com', '2024-01-10'),
('Алексей', 'Кузнецов', 'alex.kuznetsov@example.com', '2025-03-22');

Запрос на выборку данных:

SELECT * FROM Employees;
image_2

Результат

Вывод результата на экран:

image_3