Как получить LAST INSERT ID при использовании баз данных python-asyncio

Я пытаюсь сохранить объект в базе данных, используя следующий стек: Starlette, SQLArchemy и Databases.

Как я могу получить ПОСЛЕДНИЙ ВСТАВЛЕННЫЙ ID?

class User(Base):
    __tablename__ = 'users'

    id = Column(Integer, primary_key=True)
    username = Column(String)
async def create_user(request: Request) -> JSONResponse:
    data = await request.json()
    query = User.__table__.insert().values(name=data["username"])
    await database.execute(query)

    # I need the LAST INSERT IDhere

1 ответ

Решение

Я не ожидал, что решение будет таким простым. Я не нашел его в документации.

Похоже, что результат запроса вернет LAST INSERT ID, если он есть:

    last_insert_id = await database.execute(query)
Другие вопросы по тегам