MySQL之视图索引

这篇具有很好参考价值的文章主要介绍了MySQL之视图索引。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

学生表:Student (Sno, Sname, Ssex , Sage, Sdept)
学号,姓名,性别,年龄,所在系 Sno为主键
课程表:Course (Cno, Cname,)
课程号,课程名 Cno为主键
学生选课表:SC (Sno, Cno, Score)
学号,课程号,成绩 Sno,Cno为主键


首先创建一个数据库

MySQL之视图索引,mysql,数据库

1.用SQL语句创建学生表student,定义主键,姓名不能重名,性别只能输入男或女,所在系的默认值是 “计算机”。

mysql> create table Student(
-> Sno int primary key auto_increment comment '学号',
-> Sname varchar(50) unique comment '姓名',
-> Ssex enum('男','女') comment '性别',
-> Sage int comment '年龄',
-> Sdept varchar(50) default '计算机' comment '所在系'
-> );
MySQL之视图索引,mysql,数据库

2.修改student 表中年龄(age)字段属性,数据类型由int 改变为smallint。

mysql> alter table Student modify Sage smallint;3.为SC表建立按学号(sno)和课程号(cno)组合的升序的主键索引,索引名SC_INDEX 

mysql> create table SC(
-> Sno int comment '学号',
-> Cno int comment '课程号',
-> Score int comment '成绩',
-> primary key SC_index(Sno,Cno)
-> );
4.创建一视图 stu_info,查询全体学生的姓名,性别,课程名,成绩。

这里我们首先创建课程表

mysql> create table Course(
-> Cno int primary key comment '课程号',
-> Cname varchar(50) comment '课程名'
-> );
接下来我们分别往三张表中插入一些数据

Student表

mysql> insert into Student values
-> (1, '张伟', '男', 20, '计算机'),
-> (2, '王芳', '女', 22, '数学'),
-> (3, '李伟', '男', 21, '化学'),
-> (4, '王秀英', '女', 21, '土木'),
-> (5, '李娜', '女', 22, '医学');

Course表

mysql> insert into Course values (1, '网络安全'),(2, '数学思维导论'),(3, '化学原理'),(4, '土木概论'),(5, '临床学');

SC表文章来源地址https://www.toymoban.com/news/detail-802580.html

mysql> insert into SC values (1, 1, 90),(2, 2, 85),(3, 3, 92),(4, 4, 88),(5, 5, 95);接下来我们创建视图

mysql> create view stu_info as
-> select distinct Sname 姓名,Ssex 性别,Cname 课程名,Score 成绩 from Student S
-> inner join SC on S.Sno=SC.Sno
-> inner join Course C on SC.Cno=C.Cno;

到了这里,关于MySQL之视图索引的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【MySql】数据库索引

    可以简单理解为一本书的目录信息,是为了提升查找效率而建立的 1、在创建一个主键、唯一键、外键时候,数据库会自动地针对查找字段设置索引; 2、在创建表时侯,使用 index 进行普通索引的声明 3、修改表结构,给指定的字段添加索引 alter table 表名 add index 索引名

    2024年02月03日
    浏览(61)
  • MySQL数据库:索引

            索引是一种特殊的文件,包含着对数据表里所有记录的引用指针。可以对表中的一列或多列创建索引,并指定索引的类型,各类索引有各自的数据结构实现。         相当于是给数据库中的数据建立了一个目录,通过目录可以知道数据所在位置,然后到指定位置

    2023年04月17日
    浏览(74)
  • MySQL数据库唯一索引

    创建索引是指在某个表的一列或多列上建立一个索引,以便提高对表的访问速度。创建索引有3种方式,分别是1.创建表的时候创建索引、2.在已经存在的表上创建索引和使用3.ALTER TABLE语句来创建索引。 本文福利, 莬 费领取Qt开发学习资料包、技术视频,内容包括(C++语言基

    2024年02月08日
    浏览(61)
  • MySQL数据库索引机制

    MySQL是一款有客户端和服务端的网络应用,mysql是它的客户端,mysqld是它的服务端。服务端本质就是一个进程,它存在于内存当中。而我们存储在MySQL中的数据是保存在磁盘上的,当我们对MySQL中数据进行增删查改操作时,不可能是直接在磁盘上进行操作,而是将对应的数据加

    2024年02月12日
    浏览(72)
  • 简单认识MySQL数据库索引

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 ●索引是一个排序的列表,在这个列表中存储着索引的值和包含这个值的数据所在行的物理地址(类似于C语言的链表通过指针指向数据记录的内存地址)。 ●使用索引后可以不用扫描全表来定位某行的

    2024年02月16日
    浏览(65)
  • MySQL数据库索引的数据结构

    数据库索引的功能就是让查找更加的高效,所以索引的数据结构应该是能够加速查找的数据结构。 MySQL的innoDB存储引擎的索引的数据结构就是多叉搜索树中的b+树,这可以说是为索引量身定做的一个数据结构。 首先,索引可以通过主键,unique修饰创建,也可以直接使用sql语句

    2024年02月10日
    浏览(53)
  • MySQL中的表与视图:解密数据库世界的基石

    🏆作者简介,黑夜开发者,CSDN领军人物,全栈领域优质创作者✌,CSDN博客专家,阿里云社区专家博主,2023年6月CSDN上海赛道top4。 🏆数年电商行业从业经验,历任核心研发工程师,项目技术负责人。 🏆本文已收录于PHP专栏:MySQL的100个知识点。 🎉欢迎 👍点赞✍评论⭐收

    2024年02月10日
    浏览(72)
  • 【MySql系列】深入解析数据库索引

    MySQL索引是数据库中一个关键的概念,它可以极大地提高查询性能,加快数据检索速度。但是,要充分发挥索引的作用,需要深入理解它们的工作原理和使用方式。 在本文中,我们将深入解析MySQL索引,探讨它们的重要性、类型、创建、维护以及最佳实践。 在数据库中,索引

    2024年02月08日
    浏览(71)
  • 【MySQL数据库 | 第十七篇】索引以及索引结构介绍

    目录 前言: 索引简介:  索引结构:           二叉树索引结构         Tree(普通二叉树)         B-Tree(多路平衡查找树)         B+Tree          哈希索引数据结构 总结: 在实际生活中,我们对SQL语句进行优化实际上有很大一部分都是对索引进行优化,因此对索引

    2024年02月09日
    浏览(69)
  • Day04 03-MySQL数据库的DCL(用户|权限|视图)

    第十二章 DCL 12.1 DCL的作用 DCL语句主要用来做用户的创建、管理,权限的授予、撤销等操作的。 12.2 管理用户 创建、删除用户的操作,必须要使用root用户才可以完成! 12.3 权限管理 如果在授权远程登录的时候,出现如下问题: Unable to load authentication plugin ‘caching_sha2_password’

    2024年02月07日
    浏览(58)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包