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)
Я уже пробовал использовать эти решения, но безуспешно:
Решение 1
Решение 2
и несколько других решений за пределами stackoverflow уже пытались обернуть объединенное значение разными способами .
- При запуске этого запроса непосредственно в рабочей среде Mysql он работает идеально, за исключением вызова его из API.
- Когда значение имени столбца, передаваемое функции, представляет собой только цифры «47839234215» вместо «LiqNac83437», то есть цифр и букв, это работает отлично, как и ожидалось.
Подробнее здесь: https://stackoverflow.com/questions/709 ... ere-clause