Python sql таблица с параметрами в json

Добрый день!

Я пытаюсь преобразовать sql запрос в json с помощью python, но получаю ошибку при попытке использовать sql запрос с параметром:

синтаксическая ошибка sql: неправильный синтаксис рядом с "%" enter image description here

все работает нормально без установки параметра

Моя база данных - hana, а модуль - hdbcli

мой код

def db(db_name="xxx"):
    return dbapi.connect(address=db_name, port="xx", user="xx", password="123")

def query_db(query, args=(), one=False):
    cur = db().cursor()
    cur.execute(query, args)
    r = [dict((cur.description[i][0], value) for i, value in enumerate(row)) for row in cur.fetchall()]
    cur.connection.close()
    return (r[0] if r else None) if one else r


def test(request):
    my_query = query_db("select bname, name_text from addrs where num=%s", (100,))
    return JsonResponse(my_query, safe=False)

urlpatterns = [
    path('s4d/', test),
]

Спасибо

hana с hdbdcli использует :placeholder для подготовленных операторов

Некоторая информация может быть найдена

my_query = query_db("select bname, name_text from addrs where num=:num", {"num": 100})

вы используете для двух параметров

где id=:id и c2= :c2

{"id": id, "c2": c2}
Вернуться на верх