请根据一下需求创建一套mysql数据库sql语句纪录食品&药品信息以及过期提醒救生知识阅览收藏和备注;对这些知识分类并且推荐用户感兴趣的相关知识对设置有时间的事件提醒包括食品和药品即将过期时反馈一个信息给用户智能问答用户可以进行提问人工客服回答or管理员回答有区域图可以快速锁定最近的医护点并且获取医院信息;通知紧急联系人
以下是根据需求创建的mysql数据库sql语句:
-- 创建食品&药品信息表 CREATE TABLE food_medicine ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255) NOT NULL, type ENUM('food', 'medicine') NOT NULL, production_date DATE NOT NULL, expiration_date DATE NOT NULL, user_id INT NOT NULL );
-- 创建救生知识表 CREATE TABLE first_aid ( id INT AUTO_INCREMENT PRIMARY KEY, title VARCHAR(255) NOT NULL, content TEXT NOT NULL, category ENUM('CPR', 'Choking', 'Burns', 'Fractures', 'Poisoning', 'Stroke') NOT NULL );
-- 创建救生知识收藏表 CREATE TABLE first_aid_collection ( id INT AUTO_INCREMENT PRIMARY KEY, user_id INT NOT NULL, first_aid_id INT NOT NULL, note TEXT, FOREIGN KEY (user_id) REFERENCES users(id), FOREIGN KEY (first_aid_id) REFERENCES first_aid(id) );
-- 创建事件提醒表 CREATE TABLE events ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255) NOT NULL, description TEXT NOT NULL, event_date DATE NOT NULL, user_id INT NOT NULL );
-- 创建智能问答表 CREATE TABLE faq ( id INT AUTO_INCREMENT PRIMARY KEY, question TEXT NOT NULL, answer TEXT NOT NULL, answered_by ENUM('admin', 'customer_service') NOT NULL, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP );
-- 创建医院信息表 CREATE TABLE hospitals ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255) NOT NULL, address VARCHAR(255) NOT NULL, city VARCHAR(255) NOT NULL, state VARCHAR(255) NOT NULL, zip_code VARCHAR(255) NOT NULL );
-- 创建用户表 CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255) NOT NULL, email VARCHAR(255) NOT NULL, password VARCHAR(255) NOT NULL, phone_number VARCHAR(255) NOT NULL, emergency_contact_name VARCHAR(255), emergency_contact_phone_number VARCHAR(255), location_lat DOUBLE, location_lng DOUBLE );
-- 创建用户关注的救生知识的分类表 CREATE TABLE user_first_aid_category ( user_id INT NOT NULL, category ENUM('CPR', 'Choking', 'Burns', 'Fractures', 'Poisoning', 'Stroke') NOT NULL, PRIMARY KEY (user_id, category), FOREIGN KEY (user_id) REFERENCES users(id) );
-- 创建过期提醒触发器 CREATE TRIGGER expiration_reminder AFTER INSERT ON food_medicine FOR EACH ROW BEGIN IF NEW.expiration_date <= NOW() + INTERVAL 7 DAY THEN INSERT INTO events (name, description, event_date, user_id) VALUES ('Expiration Reminder', CONCAT('Your ', NEW.name, ' will expire in 7 days.'), NEW.expiration_date - INTERVAL 7 DAY, NEW.user_id); END IF; END;
-- 创建地理位置查询表 CREATE TABLE geo_location ( id INT AUTO_INCREMENT PRIMARY KEY, user_id INT NOT NULL, location_lat DOUBLE NOT NULL, location_lng DOUBLE NOT NULL, FOREIGN KEY (user_id) REFERENCES users(id) );
原文地址: https://www.cveoy.top/t/topic/FwB 著作权归作者所有。请勿转载和采集!