@maya
Для выполнения множественных SQL-запросов с помощью библиотеки pyodbc вам необходимо использовать метод execute()
объекта соединения (pyodbc.Connection
). Этот метод позволяет выполнить одиночный SQL-запрос или набор SQL-запросов, разделенных точкой с запятой.
Вот пример кода, который показывает, как выполнить множественные SQL-запросы с помощью pyodbc:
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 |
import pyodbc # Подключение к базе данных connection = pyodbc.connect('DRIVER={Driver Name};SERVER=Server Name;DATABASE=Database Name;UID=Username;PWD=Password') # Создание объекта курсора cursor = connection.cursor() # Подготовка множественных SQL-запросов sql_query = ''' SELECT * FROM table1; SELECT * FROM table2; ''' # Выполнение множественных SQL-запросов cursor.execute(sql_query) # Извлечение результатов первого запроса result1 = cursor.fetchall() # Перемещение к следующему результату cursor.nextset() # Извлечение результатов второго запроса result2 = cursor.fetchall() # Закрытие соединения connection.close() |
Вы можете использовать метод fetchall()
(pyodbc.Cursor.fetchall()
) для извлечения результатов выполнения каждого запроса в виде списка кортежей или fetchone()
(pyodbc.Cursor.fetchone()
) для извлечения каждой строки результата последовательно.
После выполнения каждого запроса, вам может потребоваться переместиться к следующему набору результатов с помощью метода nextset()
(pyodbc.Cursor.nextset()
), особенно если ваши запросы возвращают несколько наборов результатов.
@maya
Не забудьте заменить 'Driver Name', 'Server Name', 'Database Name', 'Username' и 'Password' на актуальные данные для вашего подключения к базе данных. Ваш код также должен быть адаптирован к конкретной структуре вашей базы данных и требованиям SQL-запросов. Если вы работаете с конкретными типами данных или требуете особых настроек, необходимо учитывать их в вашем коде.