HOWTO · Flask

Flask SQLAlchemy에서 레코드 삭제

이 가이드에서는 SQLAlchemy가 무엇인지, 시스템에서 SQLAlchemy를 다운로드하는 방법 및 구현 방법을 살펴봅니다. 또한 SQLAlchemy에서 삭제 기능을 사용하는 방법을 보여줍니다.

이 페이지의 내용

이 가이드에서는 SQLAlchemy가 무엇인지, 시스템에서 SQLAlchemy를 다운로드하는 방법 및 구현 방법을 살펴봅니다. 또한 SQLAlchemy에서 delete 기능이 어떻게 사용되는지 보여줍니다.

Flask SQLAlchemy 사용

응용 프로그램 개발자는 SQLAlchemy를 사용하여 Python SQL 도구 키트 및 개체 관계 매퍼를 통해 SQL의 기능과 유연성을 최대한 활용할 수 있습니다. 고성능 및 효율적인 데이터베이스 액세스를 위해 설계된 완벽한 엔터프라이즈 지속성 패턴 제품군을 제공하는 사용하기 쉬운 Python 도메인 언어입니다.

SQLAlchemy에는 SQLite, PostgreSQL, MySQL, Oracle, MS-SQL, Firebird, Sybase 등을 위한 방언이 포함되어 있습니다. Python 2.5 이상을 지원합니다.

기타 지원되는 플랫폼에는 Jython 및 Pypy가 있습니다.

SQLAlchemy의 매우 유명한 예는 Yelp입니다!

이것을 사용하는 큰 장점은 데이터베이스 때문입니다. 우리는 Python 코드를 변경할 필요가 없고 데이터베이스의 URI만 변경할 필요가 있습니다. 여기서 URI는 URL과 같지만 데이터베이스용입니다.

Flask SQLAlchemy 다운로드

시스템에 SQLAlchemy를 설치하는 데 사용되는 간단한 명령이 있습니다. 자세한 사항은 여기를 클릭하시면 홈페이지에서 확인하실 수 있습니다.

pip install flask-sqlalchemy

이를 설치한 후 제공된 기능을 사용하기 위해 flask_sqlalchemy 라이브러리에서 SQLAlchemy를 가져옵니다.

Flask SQLAlchemy에서 레코드 삭제

SQLAlchemy의 기능 중 하나인 delete()는 프런트엔드에서 백엔드로 데이터를 삭제하는 작업입니다.

SQLAlchemy는 delete() 작업을 사용하여 데이터베이스 테이블에서 데이터를 제거합니다. 데이터베이스를 생성할 때 엔진을 사용하여 유사한 개체 및 인스턴스가 생성됩니다.

다음은 예제 코드에서 사용되는 중요한 함수입니다.

고객 기능

이 함수의 유일한 목적은 데이터베이스에 테이블을 만드는 것입니다. 이 기능을 사용하여 객체를 추가하고 삭제할 수 있습니다.

추가 설명은 아래에서 제공됩니다.

세션 기초

각 쿼리는 향후 참조를 용이하게 하기 위해 데이터의 보관 영역으로 사용되는 세션 ID를 생성합니다. 간단히 말해서 세션은 데이터베이스와의 모든 상호 작용을 설정하고 수명 동안 사용한 모든 개체를 저장합니다.

이 가이드의 끝에 제공된 예제에서는 Session에서 session.add(), session.delete()session.commit()의 세 가지 호출을 사용합니다.

session.add()session.delete() 호출은 해당 매개변수에 언급된 특정 객체를 추가 및 삭제하는 데 사용됩니다. 일반적으로 session.commit()을 사용할 때까지 처음에는 근거 없는 형식으로 시작한 다음 제공된 데이터를 저장합니다.

session.commit() 호출

모든 작업이 성공하면 이 호출이 실행된 다음 제공된 모든 데이터를 계속 저장합니다. 그러나 작업이 실행되지 않거나 예외가 표시되면 session.rollback() 호출이 수행된 트랜잭션을 롤백합니다.

그러나 우리는 session.commit()에 대해서만 알아야 하므로 이 호출을 조사하지 않습니다.

아래는 위에서 언급한 호출을 사용하는 코드의 예이며 데이터베이스에서 데이터를 삭제하거나 제거하는 방법을 보여줍니다.

삽입 기능

이 함수는 Customer 클래스에서 생성된 테이블에 새 객체를 생성합니다. 매개변수에 제공된 객체를 삽입하기 위해 session.add() 호출을 호출합니다.

그런 다음 session.commit()을 사용하여 업데이트된 테이블을 데이터베이스에 저장합니다.

삭제 기능

이 기능은 삽입 기능의 반대입니다. 이 함수는 매개변수에 제공된 개체를 삭제하는 데 사용됩니다.

여기에서 session.delete()를 사용하여 지정된 객체를 삭제한 다음 session.commit()을 사용하여 업데이트된 테이블을 데이터베이스에 저장합니다.

여기서 configuri를 통해 데이터베이스를 지정하는 데 사용됩니다. 데이터베이스의 uri만 추가하면 됩니다.

from flask import Flask
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)

# TODO Specify Your DataBase Uri
# TODO Specify Your DataBase Uriapp.config['SQLALCHEMY_DATABASE_URI'] =

# initiating the sqlalchemy object
db = SQLAlchemy(app)


class Customer(db.Model):  # a table is being created here
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(50))
    address = db.Column(db.String(200))
    email = db.Column(db.String(50))

    def __init__(self, id, name, address, email):
        self.id = id
        self.name = name
        self.address = address
        self.email = email


def insert(id, name, address, email):
    # create the object of model class
    c1 = Customer(id, name, address, email)
    db.session.add(c1)
    db.session.commit()

    return "Customer Added Successfully"


def delete(self, id):  # Data is being deleted here
    dc = Customerque.ry.get(id)
    db.session.delete(dc)
    db.session.commit()

    return "Customer Deleted SuccessFully"

이 예에서는 이러한 기능을 수행하기 위해 데이터베이스 URI를 제공해야 합니다. URI를 제공한 후 Customer 클래스가 실행되어 작업할 테이블을 생성합니다.

그런 다음 insert 기능을 통해 원하는 만큼 객체를 생성할 수 있으며 delete 기능은 필요한 객체(있는 경우)를 삭제합니다.