Я хотел бы иметь соединение между моим кодом python и базой данных SQL. Я прочитал несколько способов сделать это, но я не получаю результатов.Переменные PyMySQL в запросах
conn = pymysql.connect(user=X,passwd=X,host=X,port=X,database=X, charset='utf8', autocommit=True)
curs = conn.cursor()
try:
curs.execute('SELECT id,sing_name,bir_yr FROM singers_list WHERE bir_yr = ? ',year)
data = curs.fetchall()
for i in data:
yield " Data: " + str(i) + "<br/>"
except:
yield " Failed to get data from base<br/>"
Где год переменную INT питона. Я получаю правильные результаты с:
curs.execute('SELECT id,sing_name,bir_yr FROM singers_list)
Это означает, что я успешно соединяюсь с базой данных. Как включить переменные в запросы? (не только целые, но строки тоже или любой тип)
Не использует '?' Своего рода стандарт и используется всем, кроме PyMySql? – jlh
@jlh Я на самом деле думаю, что это наоборот :) Во всяком случае, я обычно просто обращаюсь к документации драйвера о синтаксисе параметризации. Спасибо, хороший вопрос. – alecxe