#python #sql
#python #sql
Вопрос:
Несмотря на то, что здесь есть похожие вопросы, я пытался снова и снова, но пока безуспешно.
Мой скрипт на Python загружает в переменную «code» все строки sql из sql.txt:
start_time = input("insert[dd-mm-yyyy]:")
code = open(r'Querysql.txt', 'r').read()
final = cursor.execute(code).fetchall()
В sql.txt код sql выполняется с помощью инструкции OPENQUERY:
SELECT * FROM OPENQUERY(GATEWAY,'SELECT * FROM meas_table WHERE daytime >= to_date(''13-08-2020 00:00'', ''dd-mm-yyyy HH24:MI'') ')
Как я могу изменить строку sql, чтобы правильно передавать переменную start_time, полученную из скрипта python, в код sql?
Ответ №1:
Я бы отформатировал запрос (форматирование строки).
Примите start_time
переменную для форматирования вашего запроса.
SELECT *
FROM OPENQUERY(GATEWAY,'SELECT * FROM meas_table WHERE daytime >= to_date('{date_here}', ''dd-mm-yyyy HH24:MI'') ')
code.format(date_here=start_time)
Комментарии:
1. Спасибо @mustafasencer и marc_s, нет способа заставить ее работать правильно