Pymysql.err.OperationalError: 1054. «Неизвестный столбец 'X' в пункте 'where'Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Pymysql.err.OperationalError: 1054. «Неизвестный столбец 'X' в пункте 'where'

Сообщение Anonymous »

Я получаю следующую ошибку в консоли, где имя столбца на самом деле является значением, переданным через запрос:

pymysql.err.OperationalError: (1054, «Неизвестный столбец 'LiqNac83437' в
'выраженииwhere'")

Это моя функция:

Код: Выделить всё

sql = f"""
SELECT
detallev.clave,
detallev.cantidad,
venta.fecha
FROM
detallev
INNER JOIN
venta ON detallev.ven_id = venta.ven_id
WHERE
clave = '{codigoBarras}'
AND (fecha BETWEEN {fecha_inicio} AND {fecha_final});"""
print(sql)
with bd:
with bd.cursor() as cursor:
cursor.execute(sql)
resultado = cursor.fetchall()
cursor.close()
который вызывается:

Код: Выделить всё

@app.get('/{sucursal}/reporte/articulos/')
def reporte_articulo(sucursal: Origenes, clave: str = '', fecha_inicial: str = '', fecha_final: str = fechaHoy(), username: str = Depends(valida_usuario)):
return reporte_articulos.reporte_articulo(sucursal, clave, fecha_inicial, fecha_final)
Я использую FastAPI, Python и Mysql.
Я уже пробовал использовать эти решения, но безуспешно:

Решение 1
Решение 2

и несколько других решений за пределами stackoverflow уже пытались обернуть объединенное значение разными способами .
  • При запуске этого запроса непосредственно в рабочей среде Mysql он работает идеально, за исключением вызова его из API.
  • Когда значение имени столбца, передаваемое функции, представляет собой только цифры «47839234215» вместо «LiqNac83437», то есть цифр и букв, это работает отлично, как и ожидалось.


Подробнее здесь: https://stackoverflow.com/questions/709 ... ere-clause
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»