У меня есть скрипт Python, который запрашивает данные из базы данных и сохраняет их внутри фрейма данных.
В запросе SQL используются изменения, основанные на вводе данных пользователем.
Вот код, который у меня есть (он работает, но я чувствую, что делаю не так, как надо):
# Accept parameters
release = input('Enter Release:')
level = input('Enter Level:')
cycle = input('Enter Cycle:')
date = input('Enter Date:')
time = input('Enter Time:')
# Define query template
query = """
select
shipment_id,
'INPUT_DATE' AS DATE,
'INPUT_TIME' AS TIME
from table
where
release = 'INPUT_RELEASE'
and level = 'INPUT_LEVEL'
and cycle = 'INPUT_CYCLE'
"""
# Replace query's filter placeholders with the correct parameters
query = query.replace('INPUT_RELEASE', release)
query = query.replace('INPUT_LEVEL', level)
query = query.replace('INPUT_CYCLE', cycle)
query = query.replace('INPUT_DATE', date)
query = query.replace('INPUT_TIME', time)
# Connect to Oracle DB
import cx_Oracle
connection = cx_Oracle.connect('username', 'password', 'dbhost.example.com/service', encoding='UTF-8')
# Write query to dataframe
import pandas as pd
df = pd.read_sql(query, connection)
# Close the connection
connection.close()
# Show dataframe
df
Буду очень признателен, если кто-нибудь поможет мне улучшить это!