У меня есть sqlite db с именем clients.db
с таблицей с именем prices
. Внутри таблицы у меня есть столбцы ['date', 'xyz', 'abc', 'sta, 'vert']
. Я обращаюсь к базе данных из Python 3.
Я могу достаточно легко получить конкретный номер, используя:
conn = sqlite3.connect('clients.db')
c = conn.cursor()
c.execute('''SELECT "xyz" FROM prices WHERE date=?''', ('2019-01-07', ))
conn.close()
print(c.fetchone()[0])
Возвращает 1902
, как и ожидалось.
Однако, когда я пытаюсь описать ниже, вместо ожидаемого числа я получаю xyz
.
conn = sqlite3.connect('clients.db')
c = conn.cursor()
c.execute('''SELECT ? FROM prices WHERE date=?''', ('xyz', '2019-01-07', ))
conn.close()
print(c.fetchone()[0])
и когда я добавляю a =?
, я получаю sqlite3.OperationalError: near "=": syntax error
:
conn = sqlite3.connect('clients.db')
c = conn.cursor()
c.execute('''SELECT =? FROM prices WHERE date=?''', ('xyz', '2019-01-07', ))
conn.close()
print(c.fetchone()[0])