根据ai创建校园管理系统——MySQL数据库设计与建立
native效果展示一.DDL语句-- -- 校园二手交易系统 - DDL数据定义语句 -- -- 1. 初始化设置 SET FOREIGN_KEY_CHECKS 0; -- 临时关闭外键检查避免删表报错 SET NAMES utf8mb4; -- 2. 创建并使用数据库 CREATE DATABASE IF NOT EXISTS campus_second_hand_trade DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; USE campus_second_hand_trade; -- 3. 按「子表→主表」顺序删除旧表避免外键依赖报错 DROP TABLE IF EXISTS review; DROP TABLE IF EXISTS order_info; DROP TABLE IF EXISTS goods; DROP TABLE IF EXISTS category; DROP TABLE IF EXISTS user_info; -- 4. 创建用户信息表主表 CREATE TABLE user_info ( user_id INT PRIMARY KEY AUTO_INCREMENT COMMENT 用户ID主键, student_id VARCHAR(20) NOT NULL UNIQUE COMMENT 学号校园唯一标识, user_name VARCHAR(50) NOT NULL COMMENT 用户姓名, phone VARCHAR(11) NOT NULL UNIQUE COMMENT 手机号, email VARCHAR(100) UNIQUE COMMENT 校园邮箱, registration_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT 注册时间, status TINYINT DEFAULT 1 COMMENT 用户状态1-正常0-禁用, INDEX idx_student_id (student_id), INDEX idx_phone (phone) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COMMENT校园用户信息表; -- 5. 创建物品分类表主表 CREATE TABLE category ( category_id INT PRIMARY KEY AUTO_INCREMENT COMMENT 分类ID主键, category_name VARCHAR(50) NOT NULL UNIQUE COMMENT 分类名称, description VARCHAR(200) COMMENT 分类描述, sort INT DEFAULT 0 COMMENT 排序权重越大越靠前, create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间 ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COMMENT物品分类表; -- 6. 创建二手物品表从表 CREATE TABLE goods ( goods_id INT PRIMARY KEY AUTO_INCREMENT COMMENT 物品ID主键, publisher_id INT NOT NULL COMMENT 发布者用户ID外键, category_id INT NOT NULL COMMENT 物品分类ID外键, goods_title VARCHAR(100) NOT NULL COMMENT 物品标题, goods_description TEXT COMMENT 物品详情描述, price DECIMAL(10,2) NOT NULL COMMENT 出售价格, original_price DECIMAL(10,2) COMMENT 原价, goods_condition VARCHAR(20) NOT NULL COMMENT 成色全新、99新、95新、9成新、8成新、7成新及以下, goods_status TINYINT DEFAULT 1 COMMENT 物品状态1-上架中2-已售出3-已下架, publish_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT 发布时间, update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 更新时间, view_count INT DEFAULT 0 COMMENT 浏览次数, FOREIGN KEY (publisher_id) REFERENCES user_info(user_id) ON DELETE CASCADE ON UPDATE CASCADE, FOREIGN KEY (category_id) REFERENCES category(category_id) ON DELETE RESTRICT ON UPDATE CASCADE, INDEX idx_publisher (publisher_id), INDEX idx_category (category_id), INDEX idx_status (goods_status) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COMMENT二手物品信息表; -- 7. 创建交易订单表从表 CREATE TABLE order_info ( order_id INT PRIMARY KEY AUTO_INCREMENT COMMENT 订单ID主键, order_no VARCHAR(30) NOT NULL UNIQUE COMMENT 订单编号唯一标识, buyer_id INT NOT NULL COMMENT 买家用户ID外键, goods_id INT NOT NULL UNIQUE COMMENT 交易物品ID外键, deal_price DECIMAL(10,2) NOT NULL COMMENT 成交价格, order_status TINYINT NOT NULL DEFAULT 1 COMMENT 订单状态1-待确认2-已确认待交易3-交易完成4-已取消, create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT 订单创建时间, update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 订单更新时间, deal_time DATETIME COMMENT 交易完成时间, remark VARCHAR(200) COMMENT 订单备注, FOREIGN KEY (buyer_id) REFERENCES user_info(user_id) ON DELETE CASCADE ON UPDATE CASCADE, FOREIGN KEY (goods_id) REFERENCES goods(goods_id) ON DELETE RESTRICT ON UPDATE CASCADE, INDEX idx_buyer (buyer_id), INDEX idx_order_status (order_status), INDEX idx_create_time (create_time) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COMMENT交易订单表; -- 8. 创建交易评价表从表 CREATE TABLE review ( review_id INT PRIMARY KEY AUTO_INCREMENT COMMENT 评价ID主键, order_id INT NOT NULL UNIQUE COMMENT 关联订单ID外键, reviewer_id INT NOT NULL COMMENT 评价人用户ID外键, reviewed_user_id INT NOT NULL COMMENT 被评价人用户ID外键, rating TINYINT NOT NULL COMMENT 评分1-5分5分为满分, review_content TEXT COMMENT 评价内容, review_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT 评价时间, FOREIGN KEY (order_id) REFERENCES order_info(order_id) ON DELETE RESTRICT ON UPDATE CASCADE, FOREIGN KEY (reviewer_id) REFERENCES user_info(user_id) ON DELETE CASCADE ON UPDATE CASCADE, FOREIGN KEY (reviewed_user_id) REFERENCES user_info(user_id) ON DELETE CASCADE ON UPDATE CASCADE, INDEX idx_reviewer (reviewer_id), INDEX idx_reviewed_user (reviewed_user_id) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COMMENT交易评价表; -- 9. 恢复外键检查并显示创建的表 SET FOREIGN_KEY_CHECKS 1; SHOW TABLES;二.DML语句-- -- 校园二手交易系统 - DML数据操作语句 -- -- 1. 初始化设置 SET FOREIGN_KEY_CHECKS 0; -- 临时关闭外键检查避免插入顺序报错 SET NAMES utf8mb4; -- 2. 强制使用目标数据库确保数据插入到正确的库中 USE campus_second_hand_trade; -- 3. 按「主表→子表」顺序插入数据每张表≥10条 -- 3.1 插入用户信息表数据15条 INSERT INTO user_info (student_id, user_name, phone, email) VALUES (2022010101, 张三, 13800138001, zhangsancampus.edu.cn), (2022010102, 李四, 13800138002, lisicampus.edu.cn), (2022010103, 王五, 13800138003, wangwucampus.edu.cn), (2022010104, 赵六, 13800138004, zhaoliucampus.edu.cn), (2022010105, 钱七, 13800138005, qianqicampus.edu.cn), (2022010106, 孙八, 13800138006, sunbacampus.edu.cn), (2022010107, 周九, 13800138007, zhoujiucampus.edu.cn), (2022010108, 吴十, 13800138008, wushicampus.edu.cn), (2022010109, 郑十一, 13800138009, zhengshiyicampus.edu.cn), (2022010110, 王十二, 13800138010, wangshiercampus.edu.cn), (2022010111, 李十三, 13800138011, lishisancampus.edu.cn), (2022010112, 张十四, 13800138012, zhangshisicampus.edu.cn), (2022010113, 刘十五, 13800138013, liushiwucampus.edu.cn), (2022010114, 陈十六, 13800138014, chenshiliucampus.edu.cn), (2022010115, 杨十七, 13800138015, yangshiqicampus.edu.cn); -- 3.2 插入物品分类表数据10条 INSERT INTO category (category_name, description, sort) VALUES (数码产品, 手机、电脑、平板、耳机、相机等数码设备, 100), (书籍教材, 专业教材、考研考公资料、课外读物、小说等, 90), (生活用品, 宿舍用品、洗护用品、收纳用品、小家电等, 80), (服饰鞋包, 衣服、鞋子、包包、配饰等, 70), (运动户外, 运动器材、健身装备、户外用品等, 60), (美妆护肤, 护肤品、化妆品、美妆工具等, 50), (零食饮料, 零食、饮料、特产等, 40), (乐器文娱, 乐器、手办、周边、桌游、文创等, 30), (交通工具, 自行车、电动车、平衡车等代步工具, 20), (其他闲置, 不在上述分类的其他闲置物品, 10); -- 3.3 插入二手物品表数据20条 INSERT INTO goods (publisher_id, category_id, goods_title, goods_description, price, original_price, goods_condition, goods_status) VALUES (1, 1, 95新iPad 2021 64G, 自用iPad 202164G电池健康88%无拆无修带原装充电器平时用来上网课现在换了新的低价出, 1800.00, 2999.00, 95新, 1), (2, 2, 计算机专业全套教材, 大一到大四计算机专业核心教材包括数据结构、操作系统、计算机网络、数据库等大部分全新少量有笔记打包出, 200.00, 800.00, 9成新, 1), (3, 3, 宿舍用小型冰箱, 50L小型冰箱冷藏冷冻都有宿舍限电可用用了一年制冷效果好无噪音自提, 300.00, 599.00, 9成新, 1), (4, 4, 全新未拆耐克运动鞋42码, 官网买的耐克运动鞋42码买错码数了全新未拆封吊牌都在低价转, 400.00, 699.00, 全新, 1), (5, 5, 九成新瑜伽垫哑铃套装, 10mm加厚瑜伽垫防滑还有一对10kg可调节哑铃健身用了不到半年现在闲置了打包出, 150.00, 350.00, 9成新, 1), (6, 6, 未拆封雅诗兰黛小棕瓶50ml, 免税店买的雅诗兰黛小棕瓶50ml囤多了全新未拆封保质期到2027年保真, 500.00, 890.00, 全新, 1), (7, 7, 未拆封整箱纯牛奶24盒, 伊利纯牛奶250ml*24盒全新未拆封保质期还有5个月囤多了喝不完低价出, 40.00, 65.00, 全新, 1), (8, 8, 九成新尤克里里23寸, 23寸桃花心木尤克里里音色好带琴包、调音器、备用弦学了几次就闲置了适合新手, 180.00, 399.00, 9成新, 1), (9, 9, 九成新折叠自行车, 20寸折叠自行车变速可放宿舍骑了不到一年刹车变速都正常自提, 350.00, 799.00, 9成新, 1), (10, 10, 宿舍用懒人沙发, 懒人沙发可躺可坐绒布面料可拆洗用了半年无破损自提, 100.00, 299.00, 8成新, 1), (11, 1, 99新AirPods Pro 2代, 今年刚买的AirPods Pro 2代国行在保充电盒和耳机都无划痕配件齐全几乎没怎么用, 1200.00, 1899.00, 99新, 1), (12, 2, 考研英语政治全套资料, 2025考研英语和政治全套资料包括真题、精讲精练、1000题、肖四肖八等大部分全新少量有笔记, 80.00, 300.00, 9成新, 2), (13, 3, 全新未拆封吹风机, 负离子吹风机恒温护发全新未拆封公司年会中的奖用不上低价出, 80.00, 199.00, 全新, 1), (14, 4, 九成新匡威帆布鞋41码, 经典款匡威高帮帆布鞋41码只穿了几次几乎无磨损洗干净了低价转, 150.00, 399.00, 95新, 1), (15, 5, 九成新羽毛球拍一对, 胜利品牌羽毛球拍一对全碳素轻量型适合新手带拍包手胶刚换的几乎没怎么用, 200.00, 500.00, 95新, 1), (1, 2, 四六级真题词汇书, 四六级历年真题还有新东方词汇书真题只做了几套词汇书几乎全新打包出, 30.00, 120.00, 9成新, 1), (2, 3, 宿舍用床上书桌, 可折叠床上书桌带卡槽和杯架木质面板用了一年无破损自提, 40.00, 99.00, 8成新, 2), (3, 1, 9成新Switch OLED日版, Switch OLED日版带原装充电器和底座无拆无修屏幕无划痕机身轻微使用痕迹送保护壳, 1500.00, 2299.00, 9成新, 1), (4, 8, 手办 原神 雷电将军, 正版原神雷电将军手办拆摆无损盒子齐全无瑕疵退坑出, 600.00, 999.00, 95新, 1), (5, 9, 电动车头盔 全新, 3C认证电动车头盔四季通用全新未拆封买多了一个低价出, 50.00, 99.00, 全新, 1); -- 3.4 插入交易订单表数据13条 INSERT INTO order_info (order_no, buyer_id, goods_id, deal_price, order_status, deal_time, remark) VALUES (ORD20240501001, 10, 12, 80.00, 3, 2024-05-01 14:30:00, 面交资料很全), (ORD20240502002, 9, 17, 40.00, 3, 2024-05-02 10:20:00, 自提桌子很新), (ORD20240503003, 8, 6, 500.00, 3, 2024-05-03 16:40:00, 全新未拆保真), (ORD20240504004, 7, 7, 40.00, 3, 2024-05-04 09:10:00, 牛奶日期很新), (ORD20240505005, 6, 8, 180.00, 3, 2024-05-05 15:00:00, 尤克里里音色很好适合新手), (ORD20240506006, 5, 9, 350.00, 3, 2024-05-06 11:30:00, 自行车很好骑折叠很方便), (ORD20240507007, 4, 10, 100.00, 3, 2024-05-07 17:20:00, 沙发很舒服自提很顺利), (ORD20240508008, 3, 14, 150.00, 3, 2024-05-08 13:50:00, 鞋子很新码数合适), (ORD20240509009, 2, 15, 200.00, 3, 2024-05-09 10:40:00, 羽毛球拍很轻手感很好), (ORD20240510010, 1, 19, 600.00, 3, 2024-05-10 16:10:00, 手办无瑕疵很新), (ORD20240511011, 11, 20, 50.00, 3, 2024-05-11 14:20:00, 头盔质量很好全新), (ORD20240512012, 12, 13, 80.00, 2, NULL, 约定周末面交), (ORD20240513013, 13, 11, 1200.00, 1, NULL, 等待卖家确认); -- 3.5 插入交易评价表数据11条 INSERT INTO review (order_id, reviewer_id, reviewed_user_id, rating, review_content) VALUES (1, 10, 12, 5, 资料很全大部分都是全新的学长人很好还送了很多电子资料非常推荐), (2, 9, 2, 5, 桌子很新没有破损折叠很方便学姐很耐心自提很顺利好评), (3, 8, 6, 5, 全新未拆封的和描述的一样保质期还有很久价格很划算小姐姐人很好好评), (4, 7, 7, 5, 牛奶日期很新价格比超市便宜很多学长送货到楼下非常方便好评), (5, 6, 8, 5, 尤克里里很新音色很好还送了琴包和配件学长很耐心教了我基础的调音非常棒), (6, 5, 9, 4, 自行车整体很好刹车变速都正常就是有一点点掉漆不影响使用价格很划算好评。), (7, 4, 10, 5, 沙发很舒服可拆洗很方便和描述的一样没有破损学长帮忙搬到宿舍楼下非常感谢), (8, 3, 14, 5, 鞋子几乎全新没有磨损码数很准价格比专柜便宜很多非常满意好评), (9, 2, 15, 5, 羽毛球拍手感很好很轻适合新手还送了手胶和羽毛球学长人很好好评), (10, 1, 4, 5, 手办保存的很好无瑕疵盒子齐全和描述的一样价格很划算非常满意), (11, 11, 5, 5, 头盔是全新的3C认证的很安全质量很好价格很划算小姐姐人很好好评); -- 4. 恢复外键检查并验证数据插入 SET FOREIGN_KEY_CHECKS 1; -- 简单验证查询各表的数据量均≥10条即为成功 SELECT user_info表数据量 AS 表名, COUNT(*) AS 数据量 FROM user_info UNION ALL SELECT category表数据量, COUNT(*) FROM category UNION ALL SELECT goods表数据量, COUNT(*) FROM goods UNION ALL SELECT order_info表数据量, COUNT(*) FROM order_info UNION ALL SELECT review表数据量, COUNT(*) FROM review;只需将上述代码在native上新建查询运行之后刷新即可
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2425822.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!