Эрик Кристенсон
Введение:
Python — популярный язык для веб-разработки, анализа данных и научных вычислений. Он прост в освоении и имеет большое и активное сообщество пользователей. Одним из преимуществ использования Python является его способность подключаться к различным базам данных для извлечения, создания, обновления и удаления данных. В этой статье мы узнаем, как подключиться к базе данных Oracle с помощью Python и выполнить основные операции CRUD (создание, чтение, обновление, удаление).
Предпосылки:
- База данных Oracle, установленная на вашем компьютере или на удаленном сервере
- Клиентская библиотека Oracle для Python (cx_Oracle), установленная на вашем компьютере
- Базовые знания SQL
Шаг 1. Установите библиотеку cx_Oracle
Чтобы подключиться к базе данных Oracle из Python, вам потребуется установить библиотеку cx_Oracle. Эта библиотека позволяет Python подключаться к Oracle и взаимодействовать с ним с помощью SQL.
Чтобы установить cx_Oracle, откройте командную строку и введите следующую команду:
pip install cx_Oracle
Шаг 2. Подключитесь к базе данных
Для подключения к базе данных вам потребуется предоставить следующую информацию:
- имя пользователя: имя пользователя для подключения к базе данных
- пароль: пароль для имени пользователя
- host: имя хоста или IP-адрес машины, на которой работает база данных.
- порт: номер порта, на котором база данных прослушивает
- service_name: имя службы базы данных
Вот пример того, как подключиться к базе данных с помощью Python:
import cx_Oracle # Connect to the database username = 'your_username' password = 'your_password' host = 'your_hostname' port = 'your_port' service_name = 'your_service_name' dsn = cx_Oracle.makedsn(host, port, service_name=service_name) connection = cx_Oracle.connect(username, password, dsn) # Print the version of the Oracle server cursor = connection.cursor() cursor.execute('SELECT * FROM V$VERSION') row = cursor.fetchone() print(row[0]) # Close the cursor and connection cursor.close() connection.close()
Шаг 3. Выполнение операций CRUD
Теперь, когда вы подключены к базе данных, вы можете выполнять основные операции CRUD с помощью операторов SQL.
Вот некоторые примеры:
# Create a new record cursor = connection.cursor() cursor.execute("INSERT INTO users (id, name, age) VALUES (1, 'John', 30)") connection.commit() cursor.close() # Read data cursor = connection.cursor() cursor.execute("SELECT * FROM users") row = cursor.fetchone() print(row) # (1, 'John', 30) cursor.close() # Update data cursor = connection.cursor() cursor.execute("UPDATE users SET age = 40 WHERE id = 1") connection.commit() cursor.close() # Delete data cursor = connection.cursor() cursor.execute("DELETE FROM users WHERE id = 1") connection.commit() cursor.close()
Шаг 4. Закройте соединение
Когда вы закончите работу с базой данных, важно закрыть соединение, чтобы освободить ресурсы. Вы можете сделать это одним из двух способов:
Вы можете использовать метод close()
объекта Connection
. Вот пример:
import cx_Oracle # Connect to the database username = 'your_username' password = 'your_password' host = 'your_hostname' port = 'your_port' service_name = 'your_service_name' dsn = cx_Oracle.makedsn(host, port, service_name=service_name) connection = cx_Oracle.connect(username, password, dsn) # Perform database operations # ... # Close the connection connection.close()
В качестве альтернативы вы можете использовать оператор with
для автоматического закрытия соединения после завершения работы с ним. Вот пример:
import cx_Oracle # Connect to the database username = 'your_username' password = 'your_password' host = 'your_hostname' port = 'your_port' service_name = 'your_service_name' dsn = cx_Oracle.makedsn(host, port, service_name=service_name) with cx_Oracle.connect(username, password, dsn) as connection: # Perform database operations # ... # Connection is automatically closed here