Разрешить функцию ввода в python для обновления SQL запроса - PullRequest
0 голосов
/ 23 апреля 2020

Я бы хотел использовать функцию ввода в python, которая позволяет мне вводить номер счета, который будет перенаправлен непосредственно в предложение where в SQL query (ниже).

Вот мой импорт и установка SQL server connection (это прекрасно работает):

import pyodbc as pyodbc        
conn = pyodbc.connect('Driver={SQL Server};''Server=emerge-rdbmi;''Database=Something;''Trusted_Connection=yes;')
sql = conn.cursor()

Тогда у меня есть этот код:

Account = input('Enter the Account to query: ')
sql.execute('select hsp_account_name, adm_date_time, disch_date_time, tot_acct_bal, fc.financial_class_name, epm.payor_name, epp.benefit_plan_name, base.name, pat.name from hsp_account hsp left join clarity_fc fc on hsp.acct_fin_class_c=fc.financial_class left join clarity_epm epm on hsp.primary_payor_id=epm.payor_id left join clarity_epp epp on hsp.primary_plan_id=epp.benefit_plan_id left join zc_acct_basecls_ha base on hsp.acct_basecls_ha_c=base.acct_basecls_ha_c left join zc_pat_service pat on hsp.prim_svc_ha_c=pat.hosp_serv_c where hsp_account_id = [Account]")

Я считаю, что проблема находится в последней части второй строки (выше). Как правило, в предложении where в SQL номер счета должен быть заключен в '' (круглые скобки). Как видите, я не могу найти правильный способ вызова входа [Account] в контексте функции python sql.execute().

Вот ошибка, которую я получаю:

OperationalError: ('08S01', '[08S01] [Microsoft][ODBC SQL Server Driver]Communication link failure (0) (SQLExecDirectW)')

Спасибо за любую помощь!

...