CREATE DATABASE testdb;
USE testdb;
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100),
email VARCHAR(100)
);DB_HOST = 'localhost'
DB_USER = 'root'
DB_PASSWORD = 'yourpassword'
DB_NAME = 'testdb'
from flask import Flask, request, jsonify
import pymysql
app = Flask(__name__)
app.config.from_pyfile('config.py')
def get_db_connection():
return pymysql.connect(
host=app.config['DB_HOST'],
user=app.config['DB_USER'],
password=app.config['DB_PASSWORD'],
database=app.config['DB_NAME'],
cursorclass=pymysql.cursors.DictCursor
)
# CREATE
@app.route('/users', methods=['POST'])
def add_user():
data = request.json
conn = get_db_connection()
cursor = conn.cursor()
cursor.execute("INSERT INTO users (name, email) VALUES (%s, %s)", (data['name'], data['email']))
conn.commit()
cursor.close()
conn.close()
return jsonify({'message': 'User added successfully!'})
# READ
@app.route('/users', methods=['GET'])
def get_users():
conn = get_db_connection()
cursor = conn.cursor()
cursor.execute("SELECT * FROM users")
users = cursor.fetchall()
cursor.close()
conn.close()
return jsonify(users)
# UPDATE
@app.route('/users/<int:id>', methods=['PUT'])
def update_user(id):
data = request.json
conn = get_db_connection()
cursor = conn.cursor()
cursor.execute("UPDATE users SET name=%s, email=%s WHERE id=%s", (data['name'], data['email'], id))
conn.commit()
cursor.close()
conn.close()
return jsonify({'message': 'User updated successfully!'})
# DELETE
@app.route('/users/<int:id>', methods=['DELETE'])
def delete_user(id):
conn = get_db_connection()
cursor = conn.cursor()
cursor.execute("DELETE FROM users WHERE id=%s", (id,))
conn.commit()
cursor.close()
conn.close()
return jsonify({'message': 'User deleted successfully!'})
if __name__ == '__main__':
app.run(debug=True)
No Comment yet!