본문 바로가기

RestfulAPI

RestfulAPI Python MySQL Connector 딜리트 방법과 코드 예제

Python MySQL Connector 딜리트 방법과 코드 예제

Python MySQL Connector 딜리트 방법과 코드 예제

웹 개발에서 클라이언트가 데이터를 삭제할 때 주로 DELETE 요청을 사용한다. 여기서는 DELETE 요청을 받아서 MySQL 데이터베이스에서 데이터를 삭제하는 방법을 설명한다. MySQL Workbench, Visual Studio Code (VSC), 그리고 POSTMAN을 사용한 상호작용을 예시로 들어보겠다.

1. MySQL Workbench에서 테이블 준비

먼저 MySQL Workbench에서 데이터베이스와 테이블을 준비해야 한다. 예를 들어, 사용자 정보를 저장하는 users 테이블을 생성해보자.


CREATE DATABASE mydatabase;

USE mydatabase;

CREATE TABLE users (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(50),
    email VARCHAR(50),
    age INT
);
    

2. VSC에서 서버 코드 작성

이제 VSC에서 서버 코드를 작성한다. Flask를 사용하여 간단한 API를 만든다.


from flask import Flask, request, jsonify
import mysql.connector

app = Flask(__name__)

# 데이터베이스 연결 설정
db_config = {
    'user': 'root',
    'password': 'password',
    'host': '127.0.0.1',
    'database': 'mydatabase'
}

# 사용자 정보 삭제
@app.route('/user/', methods=['DELETE'])
def delete_user(id):
    conn = mysql.connector.connect(**db_config)
    cursor = conn.cursor()
    query = "DELETE FROM users WHERE id = %s"
    cursor.execute(query, (id,))
    conn.commit()
    cursor.close()
    conn.close()
    
    return jsonify({'message': 'User deleted successfully'})

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

3. POSTMAN에서 DELETE 요청 보내기

이제 POSTMAN을 사용하여 DELETE 요청을 보내보자. 다음과 같은 설정을 한다:

  • Method: DELETE
  • URL: http://127.0.0.1:5000/user/1

이제 Send 버튼을 클릭하여 요청을 보낸다.

4. 서버와 데이터베이스 상호작용

POSTMAN에서 보낸 요청은 서버 코드에 의해 처리되고, MySQL 데이터베이스의 users 테이블에서 해당 레코드가 삭제된다. 다음은 그 과정이다:

  • POSTMAN에서 DELETE 요청을 보낸다.
  • Flask 서버가 요청을 받아 해당 ID의 레코드를 삭제한다.
  • MySQL 커넥션을 열고, SQL DELETE 쿼리를 실행한다.
  • 테이블의 해당 레코드가 삭제된다.
  • 서버가 성공 메시지를 반환한다.

성공 메시지 예시:


{
    "message": "User deleted successfully"
}
    

이로써 POSTMAN, VSC, MySQL Workbench 간의 상호작용을 통해 DELETE 요청을 처리하고 데이터를 삭제하는 방법을 살펴보았다.