MySQL笔记002(视图)

   日期:2020-09-23     浏览:89    评论:0    
核心提示:这里我创建了三张表来对其使用视图CREATE TABLE userd(user_id INT(4) PRIMARY KEY,loginid VARCHAr(10) NOT NULL,name_ VARCHAr(10) NOT NULL,mobile INT(11) NOT NULL,email VARCHAr(20) NOT NULL);CREATE TABLE course(course_id INT(4) PRIMARY KEY,course_name VARCHA

这里我创建了三张表来对其使用视图

CREATE TABLE userd(
user_id INT(4) PRIMARY KEY,
loginid VARCHAr(10) NOT NULL,
name_ VARCHAr(10) NOT NULL,
mobile INT(11) NOT NULL,
email VARCHAr(20) NOT NULL
);
CREATE TABLE course(
course_id INT(4) PRIMARY KEY,
course_name VARCHAr(10) NOT NULL,
description VARCHAr(10) NOT NULL
);
CREATE TABLE user_course(
id INT(4) PRIMARY KEY,
user_id INT(4) NOT NULL,
course_id INT(4) NOT NULL
);
– 添加外键约束 外键约束只能再主键或者UNIQUE的约束条件下添加 如果添加两个则稍微改下名就好
– 例如: user_course 和user_course1
ALTER TABLE user_course ADD CONSTRAINT fk_user_course
FOREIGN KEY(user_id) REFERENCES userd(user_id);
ALTER TABLE user_course ADD CONSTRAINT fk_user_course1
FOREIGN KEY(course_id) REFERENCES course(course_id);

创建好后的表:


这里我们使用userd和course作为user_course的外连接将三张表联系起来
– 查询
SELECt u.name_,c.course_name,c.description
FROM userd u JOIN user_course uc ON u.user_id=uc.user_id JOIN course c ON c.course_id=uc.course_id
WHERe u.name_=‘花生’;
SELECt * FROM vw_user_course WHERe name_=‘花生’;
视图
CREATE
VIEW test.vw_user_course
AS SELECt u.name_,c.course_name,c.description
FROM userd u JOIN user_course uc ON u.user_id=uc.user_id JOIN course c ON c.course_id=uc.course_id;
(SELECt * FROM vw_user_course);
视图不是表,不保存数据,只是一张虚拟表,视图的数据来源于基表。
如果视图的数据只来源与一张基表,那么修改视图相当于修改基表。

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服