반응형
Flask-SQLAlchemy 단일 테이블에서 모든 행을 삭제하는 방법
Flask-SQLAlchemy를 사용하여 단일 테이블의 모든 행을 삭제하려면 어떻게해야합니까?
다음과 같은 것을 찾고 있습니다.
>>> users = models.User.query.all()
>>> models.db.session.delete(users)
# but it errs out: UnmappedInstanceError: Class '__builtin__.list' is not mapped
시도해보십시오 delete
:
models.User.query.delete()
에서 워드 프로세서 :Returns the number of rows deleted, excluding any cascades.
DazWorrall의 대답은 정확합니다. 다음은 코드가 OP와 다르게 구조화 된 경우 유용 할 수있는 변형입니다.
num_rows_deleted = db.session.query(Model).delete()
또한 다음 스 니펫에서와 같이 커밋 할 때까지 삭제가 적용되지 않는다는 것을 잊지 마십시오.
try:
num_rows_deleted = db.session.query(Model).delete()
db.session.commit()
except:
db.session.rollback()
플라스크 -Sqlalchemy
#for all records
db.session.query(Model).delete()
db.session.commit()
여기서 DB는 개체 Flask-SQLAlchemy 클래스입니다. 모든 레코드를 삭제하고 특정 레코드를 삭제하려면 filter
쿼리에서 절 을 시도 하십시오. 전의.
#for specific value
db.session.query(Model).filter(Model.id==123).delete()
db.session.commit()
반응형
'Nice programing' 카테고리의 다른 글
웹 배포 작업 빌드 실패 (0) | 2020.10.08 |
---|---|
Eclipse Juno 디버그 도구 모음이 없습니까? (0) | 2020.10.08 |
Android에서 Html.fromHtml ()을 사용하여 텍스트 색상 강조? (0) | 2020.10.08 |
Google로 로그인하기 위해 OAuth2를 사용한 애플리케이션에서 로그 아웃하는 방법은 무엇입니까? (0) | 2020.10.08 |
Google Maps V2를 사용하여 단일 마커를 제거하는 방법은 무엇입니까? (0) | 2020.10.08 |