# Connect to MySQL

connection = mysql.connector.connect(
host='localhost',
user='root',
password="password',
database = 'mydatabase
)

cursor = connection.cursor()
print("connected to MysQL")

# Perform CRUD operations

# 1.Create(Insert a new user)
def create user(name, email):
user = (name, email)
cursor.execute("INSERT INTO users (name, email)VALUES (%s,%s)", user)
connection.commit()
print("User added")

# 2.Read(Fetch all users)
def read_users():
cursor.execute("SELECT *FROM users")
for row in cursor.fetchall():
print(row)

# 3.Update(Update a user's name by ID)
def update_user(user_id, new_name):
cursor.execute("UPDATE users SET name = %s WHERE id =%s", (new_name, user_id))
connection.commit()
print("Usen updated")

# 4.Delete(Delete a user by ID)
def delete user(user_id):
cursor.execute("DELETE FROM users WHERE id =%s”,(user_id,))
connection.commit()
print("Usen deleted")

# Example usage
create_user("John Doe", "john@example.com")
read_users()
update_user(1,"Jane Doe")
delete_user(1)

# Close the connection
cursor.close()
connection.close()

請注意,這是一個用于執行CRUD操作和關閉連接的基本腳本。您越想擴展和自定義這些功能,就需要編寫越多的代碼。

MySQL REST API

要使用代碼創建 MySQL REST API,您必須首先設置 Python、Web 框架和適用于 Python 的 MySQL 連接器。以下示例使用 Flask 作為 Web 框架:

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

app = Flask(__name__)

# Function to create a MysQL connection
def create_connection():
connection = None
try:
connection = mysql.connector.connect(
host='localhost',
user='root',
password="password
database = 'mydatabase
)
if connection.is_connected():
print("connected to MysQL")
except Error as e:
print(f"Error: {e}")
return connection

# Initialize the database connection
connection = create_connection()
cursor = connection.cursor(dictionary=True)

# 1. GET /users: Retrieve all users
@app.route('/users',methods=['GET'])
def get_users():
try:
cursor.execute("SELECT * FROM users")
users = cursor.fetchall()
return jsonify(users)
except Error as e:
return jsonify({"error": str(e)})

# 2. PoST /users: Create a new user
@app.route("/users', methods=['POST'])
def add_user():
try:
user = request.json
cursor.execute("INSERT INTO users (name, email) VALUES (%s, %s)", (user['name'], user['email']))
connection.commit()
return jsonify({'id': cursor.lastrowid})
except Error as e:
return jsonify({"error": str(e)})

# 3. PUT /users/<int:id>: Update an existing user
@app.route("/users/<int:id>', methods=['PUT'])
def update_user(id):
try:
user = request.json
cursor.execute("UPDATE users SET name = %s, email = %s WHERE id = %s", (user['name"], user['email'], id))
connection.commit()
return "user updated
except Error as e:
return jsonify({"error": str(e)})

# 4. DELETE /users/<int:id>: Delete a user by ID
@app.route("/users/<int:id>', methods=['DELETE'])
def delete_user(id):
try:
cursor.execute("DELETE FROM userS WHERE id = %s”,(id,))
connection.commit()
return 'user deleted'
except Error as e:
return jsonify({"error": str(e)})

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

# Close the connection when the script terminates
@app.teardown_appcontext
def close_connection(exception):
if connection.is_connected():
cursor.close()
connection.close()
print("mysQl connection is closed")

上面的代碼將幫助您使用 Python 中的 Flask 設置 MySQL REST API。此 API 將僅執行基本的 CRUD 操作并管理數據庫連接。擴展其功能(例如,定義新路由、擴展數據模型或實現錯誤處理和驗證)將需要額外的代碼。

原文鏈接:MySQL API: What It Is and How to Create One in Minutes

上一篇:

好用的AI標題生成器API

下一篇:

通過單一位置管理最大化用戶體驗
#你可能也喜歡這些API文章!

我們有何不同?

API服務商零注冊

多API并行試用

數據驅動選型,提升決策效率

查看全部API→
??

熱門場景實測,選對API

#AI文本生成大模型API

對比大模型API的內容創意新穎性、情感共鳴力、商業轉化潛力

25個渠道
一鍵對比試用API 限時免費

#AI深度推理大模型API

對比大模型API的邏輯推理準確性、分析深度、可視化建議合理性

10個渠道
一鍵對比試用API 限時免費