Выполнение нескольких операторов SQL в модуле sqlite3 Python: методы и примеры кода

Чтобы выполнить несколько операторов SQL с помощью модуля sqlite3в Python, вы можете использовать различные подходы. Вот несколько методов с примерами кода:

Метод 1: отдельное выполнение операторов

import sqlite3
# Connect to the SQLite database
conn = sqlite3.connect('your_database.db')
cursor = conn.cursor()
# Define multiple SQL statements
sql_statements = [
    "CREATE TABLE IF NOT EXISTS table1 (id INTEGER PRIMARY KEY, name TEXT)",
    "INSERT INTO table1 (id, name) VALUES (1, 'John')",
    "INSERT INTO table1 (id, name) VALUES (2, 'Jane')"
]
# Execute each SQL statement
for statement in sql_statements:
    cursor.execute(statement)
# Commit the changes and close the connection
conn.commit()
conn.close()

Метод 2: использование executescript()

import sqlite3
# Connect to the SQLite database
conn = sqlite3.connect('your_database.db')
cursor = conn.cursor()
# Define multiple SQL statements
sql_script = '''
    CREATE TABLE IF NOT EXISTS table1 (id INTEGER PRIMARY KEY, name TEXT);
    INSERT INTO table1 (id, name) VALUES (1, 'John');
    INSERT INTO table1 (id, name) VALUES (2, 'Jane');
'''
# Execute the SQL script
cursor.executescript(sql_script)
# Commit the changes and close the connection
conn.commit()
conn.close()

Метод 3: использование executemany()

import sqlite3
# Connect to the SQLite database
conn = sqlite3.connect('your_database.db')
cursor = conn.cursor()
# Define a single SQL statement with placeholders
sql_statement = "INSERT INTO table1 (id, name) VALUES (?, ?)"
# Define multiple sets of values to insert
values = [
    (1, 'John'),
    (2, 'Jane')
]
# Execute the SQL statement for each set of values
cursor.executemany(sql_statement, values)
# Commit the changes and close the connection
conn.commit()
conn.close()