- Подключение к базе данных PostgreSQL:
Чтобы установить соединение с базой данных PostgreSQL, вы можете использовать библиотеку psycopg2. Вот пример:
import psycopg2
# Connect to the PostgreSQL database
conn = psycopg2.connect(
host="your_host",
database="your_database",
user="your_user",
password="your_password"
)
# Create a cursor object
cursor = conn.cursor()
# Execute a query
cursor.execute("SELECT * FROM your_table")
# Fetch and print the results
results = cursor.fetchall()
for row in results:
print(row)
# Close the cursor and connection
cursor.close()
conn.close()
- Выполнение SQL-запросов.
Вы можете выполнять SQL-запросы, используя метод execute()объекта курсора. Вот пример:
# Execute a query to insert data into a table
cursor.execute("INSERT INTO your_table (column1, column2) VALUES (%s, %s)", ("value1", "value2"))
# Execute a query to update data in a table
cursor.execute("UPDATE your_table SET column1 = %s WHERE id = %s", ("new_value", 1))
# Execute a query to delete data from a table
cursor.execute("DELETE FROM your_table WHERE id = %s", (1,))
- Извлечение данных.
Вы можете получить данные из базы данных с помощью методов fetchone()и fetchall(). Вот пример:
# Fetch a single row
cursor.execute("SELECT * FROM your_table")
row = cursor.fetchone()
print(row)
# Fetch all rows
cursor.execute("SELECT * FROM your_table")
rows = cursor.fetchall()
for row in rows:
print(row)
- Обработка транзакций.
Транзакции обеспечивают целостность базы данных. Вы можете использовать методы commit()и rollback()для управления транзакциями. Вот пример:
# Begin a transaction
conn = psycopg2.connect(...)
cursor = conn.cursor()
# Execute queries within the transaction
try:
cursor.execute("INSERT INTO your_table (column1, column2) VALUES (%s, %s)", ("value1", "value2"))
cursor.execute("UPDATE your_table SET column1 = %s WHERE id = %s", ("new_value", 1))
# Commit the changes
conn.commit()
except:
# Roll back the transaction if an error occurs
conn.rollback()
# Close the cursor and connection
cursor.close()
conn.close()