基于科研管理系统的广西高校科研项目分析
CREATE TABLE Project (
project_id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(255) NOT NULL,
leader VARCHAR(100),
start_date DATE,
end_date DATE,
status ENUM('未开始', '进行中', '已完成') DEFAULT '未开始'
);
]]>
CREATE TABLE User (
user_id INT PRIMARY KEY AUTO_INCREMENT,
username VARCHAR(50) UNIQUE NOT NULL,
password VARCHAR(255) NOT NULL,
role ENUM('admin', 'researcher') DEFAULT 'researcher'
);
]]>
DELIMITER $$
CREATE TRIGGER update_project_duration AFTER UPDATE ON Project
FOR EACH ROW
BEGIN
IF NEW.status = '已完成' THEN
UPDATE Project SET duration = DATEDIFF(NEW.end_date, NEW.start_date) WHERE project_id = NEW.project_id;
END IF;
END$$
DELIMITER ;
]]>
from flask import Flask, request, jsonify
from mysql.connector import connect
app = Flask(__name__)
@app.route('/add_project', methods=['POST'])
def add_project():
data = request.get_json()
project_name = data['name']
leader = data['leader']
start_date = data['start_date']
end_date = data['end_date']
conn = connect(user='root', password='password', host='localhost', database='科研管理系统')
cursor = conn.cursor()
query = "INSERT INTO Project (name, leader, start_date, end_date) VALUES (%s, %s, %s, %s)"
cursor.execute(query, (project_name, leader, start_date, end_date))
conn.commit()
return jsonify({"message": "Project added successfully!"}), 201
]]>
本站知识库部分内容及素材来源于互联网,如有侵权,联系必删!