关键词搜索

源码搜索 ×
×

(MySQL)案例实现

发布2020-03-01浏览528次

详情内容

一、需求分析

(1)一个旅游线路分类可以有多个旅游线路
(2)一个用户可以收藏多个线路,一个线路也可以被多个用户收藏

旅游线路分类和旅游线路是一对多的关系
旅游线路和用户是多对多的关系

二、MySQL 代码

  1. 创建旅游线路分类表: tab_category
-- cid 旅游线路分类主键,自动增长
-- cname 旅游线路分类名称非空,唯一,字符串 100
			CREATE TABLE tab_category (
				cid INT PRIMARY KEY AUTO_INCREMENT,
				cname VARCHAR(100) NOT NULL UNIQUE
			);
    1. 创建旅游线路表:tab_route
    /*
    			rid 旅游线路主键,自动增长
    			rname 旅游线路名称非空,唯一,字符串 100
    			price 价格
    			rdate 上架时间,日期类型
    			cid 外键,所属分类
    */
    			CREATE TABLE tab_route(
    				rid INT PRIMARY KEY AUTO_INCREMENT,
    				rname VARCHAR(100) NOT NULL UNIQUE,
    				price DOUBLE,
    				rdate DATE,
    				cid INT,
    				FOREIGN KEY (cid) REFERENCES tab_category(cid)
    			);
    
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    1. 创建用户表:tab_user
    /*创建用户表 tab_user
    			uid 用户主键,自增长
    			username 用户名长度 100,唯一,非空
    			password 密码长度 30,非空
    			name 真实姓名长度 100
    			birthday 生日
    			sex 性别,定长字符串 1
    			telephone 手机号,字符串 11
    			email 邮箱,字符串长度 100
    */
    			CREATE TABLE tab_user (
    				uid INT PRIMARY KEY AUTO_INCREMENT,
    				username VARCHAR(100) UNIQUE NOT NULL,
    				PASSWORD VARCHAR(30) NOT NULL,
    				NAME VARCHAR(100),
    				birthday DATE,
    				sex CHAR(1) DEFAULT '男',--默认值为男
    				telephone VARCHAR(11),
    				email VARCHAR(100)
    			);
    
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    1. 创建连接用户和旅游线路之间的关系表:收藏表 tab_favorite
    /*
    			创建收藏表 tab_favorite
    			rid 旅游线路 id,外键
    			date 收藏时间
    			uid 用户 id,外键
    			rid 和 uid 不能重复,设置复合主键,同一个用户不能收藏同一个线路两次
    */
    			CREATE TABLE tab_favorite (
    				rid INT, -- 线路id
    				DATE DATETIME,
    				uid INT, -- 用户id
    				-- 创建复合主键
    				PRIMARY KEY(rid,uid), -- 联合主键
    				FOREIGN KEY (rid) REFERENCES tab_route(rid),
    				FOREIGN KEY(uid) REFERENCES tab_user(uid)
    			);
    
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    三、关系图

    在这里插入图片描述

    相关技术文章

    点击QQ咨询
    开通会员
    返回顶部
    ×
    微信扫码支付
    微信扫码支付
    确定支付下载
    请使用微信描二维码支付
    ×

    提示信息

    ×

    选择支付方式

    • 微信支付
    • 支付宝付款
    确定支付下载