数据库学习-视图的应用 作业示例【带源码】

简介: MySQL数据库 “视图的应用” 习题示例,包含源码,能建立起对于视图的应用的基本概念

 目录

 

1.创建表


2.添加数据


3.查看数据


4.创建视图


1.创建表


image.gif编辑

create table stu(

   -> s_id int(11) not null unique primary key,

   -> s_name varchar(20) not null,

   -> addr varchar(50) not null,

   -> tel varchar(50) not null

-> );


create table sign(

   -> s_id int(11) not null unique primary key,

   -> s_name varchar(20) not null,

   -> s_sch varchar(50) not null,

   -> s_sign_sch varchar(50) not null

   -> );


create table stu_mark(

   -> s_id int(11) not null unique primary key,

   -> s_name varchar(20) not null,

   -> mark int(11) not null

   -> );


image.gif编辑


内容解析:使用命令语句创建三个表,其中注意添加约束就行


2.添加数据


image.gif编辑

image.gif编辑

insert into stu values

   -> (1,"ZhangPeng","Hebei",13889075861),

   -> (2,"LiXiao","Shandong",13953508223),

   -> (3,"HangYun","Shandong",13905350996);

insert into sign values

   -> (1,"ZhangPeng","High_School1","Peking_University"),

   -> (2,"LiXiao","High_School2","Peking_University"),

   -> (3,"HuangYun","High_School3","Tsinghua_University");

insert into stu_mark values

   -> (1,"ZhangPeng",730),

   -> (2,"LiXiao",725),

   -> (3,"HuangYun",736);


image.gif编辑


image.gif编辑


内容解析:给上面创建的表里面添加数据,其中注意区分是个别字段还是所有字段,这样方便选择命令语句,提高效率和保证正确率,以上是所有字段添加数据


3.查看数据


image.gif编辑


image.gif编辑


4.创建视图


image.gif编辑

create view beida as

   -> select a.s_id,a.s_name,c.mark,b.s_sign_sch from

   -> stu a inner join stu_mark c on  a.s_id = c.s_id

   -> inner join sign b on c.s_id = b.s_id where

   -> c.mark>=720 and

   -> b.s_sign_sch ="Peking_University";


image.gif编辑


image.gif编辑

create view qinghua as

   -> select a.s_id,a.s_name,c.mark,b.s_sign_sch from

   -> stu a inner join stu_mark c on  a.s_id = c.s_id

   -> inner join sign b on c.s_id = b.s_id where

   -> c.mark>=725 and

   -> b.s_sign_sch ="Tsinghua_University";


image.gif编辑


image.gif编辑


update stu_mark set

   -> mark=mark-10

   -> where stu_mark.s_name ="HuangYun";


image.gif编辑


内容解析:创建视图是为了更加方便的查看数据,其中的命令语句要注意的就是不要漏了as ,还有一个要注意的点,就是各个表之间连接的逻辑要理清楚

相关文章
|
17天前
|
人工智能 容灾 关系型数据库
【AI应用启航workshop】构建高可用数据库、拥抱AI智能问数
12月25日(周三)14:00-16:30参与线上闭门会,阿里云诚邀您一同开启AI应用实践之旅!
|
2月前
|
架构师 数据库
大厂面试高频:数据库乐观锁的实现原理、以及应用场景
数据库乐观锁是必知必会的技术栈,也是大厂面试高频,十分重要,本文解析数据库乐观锁。关注【mikechen的互联网架构】,10年+BAT架构经验分享。
大厂面试高频:数据库乐观锁的实现原理、以及应用场景
|
2月前
|
缓存 NoSQL 数据库
运用云数据库 Tair 构建缓存为应用提速,完成任务得苹果音响、充电套装等好礼!
本活动将带大家了解云数据库 Tair(兼容 Redis),通过体验构建缓存以提速应用,完成任务,即可领取罗马仕安卓充电套装,限量1000个,先到先得。邀请好友共同参与活动,还可赢取苹果 HomePod mini、小米蓝牙耳机等精美好礼!
|
2月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。通过具体案例,读者可以了解如何准备环境、下载源码、编译安装、配置服务及登录 MySQL。编译源码安装虽然复杂,但提供了更高的定制性和灵活性,适用于需要高度定制的场景。
139 3
|
2月前
|
PHP 数据库 数据安全/隐私保护
布谷直播源码部署服务器关于数据库配置的详细说明
布谷直播系统源码搭建部署时数据库配置明细!
|
2月前
|
SQL Java 数据库连接
在Java应用中,数据库访问常成为性能瓶颈。连接池技术通过预建立并复用数据库连接,有效减少连接开销,提升访问效率
在Java应用中,数据库访问常成为性能瓶颈。连接池技术通过预建立并复用数据库连接,有效减少连接开销,提升访问效率。本文介绍了连接池的工作原理、优势及实现方法,并提供了HikariCP的示例代码。
66 3
|
2月前
|
存储 Java 关系型数据库
在Java开发中,数据库连接是应用与数据交互的关键环节。本文通过案例分析,深入探讨Java连接池的原理与最佳实践
在Java开发中,数据库连接是应用与数据交互的关键环节。本文通过案例分析,深入探讨Java连接池的原理与最佳实践,包括连接创建、分配、复用和释放等操作,并通过电商应用实例展示了如何选择合适的连接池库(如HikariCP)和配置参数,实现高效、稳定的数据库连接管理。
73 2
|
2月前
|
JSON JavaScript 关系型数据库
node.js连接GBase 8a 数据库 并进行查询代码示例
node.js连接GBase 8a 数据库 并进行查询代码示例
|
17天前
|
存储 Oracle 关系型数据库
数据库传奇:MySQL创世之父的两千金My、Maria
《数据库传奇:MySQL创世之父的两千金My、Maria》介绍了MySQL的发展历程及其分支MariaDB。MySQL由Michael Widenius等人于1994年创建,现归Oracle所有,广泛应用于阿里巴巴、腾讯等企业。2009年,Widenius因担心Oracle收购影响MySQL的开源性,创建了MariaDB,提供额外功能和改进。维基百科、Google等已逐步替换为MariaDB,以确保更好的性能和社区支持。掌握MariaDB作为备用方案,对未来发展至关重要。
44 3
|
17天前
|
安全 关系型数据库 MySQL
MySQL崩溃保险箱:探秘Redo/Undo日志确保数据库安全无忧!
《MySQL崩溃保险箱:探秘Redo/Undo日志确保数据库安全无忧!》介绍了MySQL中的三种关键日志:二进制日志(Binary Log)、重做日志(Redo Log)和撤销日志(Undo Log)。这些日志确保了数据库的ACID特性,即原子性、一致性、隔离性和持久性。Redo Log记录数据页的物理修改,保证事务持久性;Undo Log记录事务的逆操作,支持回滚和多版本并发控制(MVCC)。文章还详细对比了InnoDB和MyISAM存储引擎在事务支持、锁定机制、并发性等方面的差异,强调了InnoDB在高并发和事务处理中的优势。通过这些机制,MySQL能够在事务执行、崩溃和恢复过程中保持
47 3