본문 바로가기

BackEnd

API - Python MySQL Connector를 이용해 delete 하는 방법

반응형
Python MySQL Connector를 이용해 delete 하는 방법

 

 

 

 

1. VS Code에서 delete을 이용해 함수 만들기

 

 

 

from http import HTTPStatus
from flask import request
from flask_restful import Resource
from mysql.connector.errors import Error
from mysql_connection import get_connection
import mysql.connector

class RecipeResource(Resource) :
# 삭제하는 delete 함수
    def delete(self, recipe_id) :

        try :
            # 데이터 삭제
            #1. DB에 연결
            connection = get_connection()
            #2. 쿼리문 만들기
            query = '''delete from recipe
                    where id = %s ;'''

            record = (recipe_id, )

            #3. 커서를 가져온다.
            cursor = connection.cursor()
            #4. 쿼리문을 커서를 이용해서 실행한다.
            cursor.execute(query, record)
            #5. 커넥션을 커밋해줘야 한다. => 디비에 영구적으로 반영하라는 뜻
            connection.commit()
            #6. 자원 해제
            cursor.close()
            connection.close()

        # 정상적이지 않을때
        except mysql.connector.Error as e :
            print(e)
            cursor.close()
            connection.close()

            return {'error' : str(e)}, 503
        
        return {'result' : 'success'}, 200

 

 

2. app.py에서 경로와 resource(API 코드)를 연결한다.

 

from flask import Flask
from flask_restful import Api

from resources.recipe import RecipeListResource
from resources.recipe_info import RecipeResource


app = Flask(__name__)

api = Api(app)

# 경로와 resource(API 코드)를 연결한다.
api.add_resource(RecipeListResource, '/recipes')
api.add_resource(RecipeResource, '/recipes/<int:recipe_id>')







if __name__ == '__main__' :
    app.run()

 

 

 

3. python app.py 실행 후 POSTMAN으로 test

 

 

 

 

 

4. 4. MySQL에서 데이터 확인

 

 

반응형