MySQL数据库的视图的增删改查操作

视图是什么

视图View是一种虚拟的表,本身不保存数据,内部封装了一条SELECT语句,数据来源于查询的一张或多张实际数据的表。

视图的结构和真实的表相同,也是有行和列组成,在视图上也可以进行增删改查的操作。

视图的作用

视图主要用于查询,使用视图的优点是:

1) 简单

视图可以将复杂的查询语句进行封装,用户使用时不需要关心表的结构、连接关系、筛选条件、分组和排序等等,只需要对视图进行简单的查询。

2) 安全

创建视图时,可以筛选掉一些不希望用户看到的行和列,也可以给视图设置访问权限,让不同级别的用户看到不同的视图,从而提高数据库的数据安全性。

视图的语法

创建视图

对于创建视图中的 SELECT 语句的指定存在以下限制:

  • 用户除了拥有 CREATE VIEW 权限外,还具有操作中涉及的基础表和其他视图的相关权限。
  • SELECT 语句不能引用系统或用户变量。
  • SELECT 语句不能包含 FROM 子句中的子查询。
  • SELECT 语句不能引用预处理语句参数。
语法:
create view 视图名  as  select语句;

视图定义中引用的表或视图必须存在。但是,创建完视图后,可以删除定义引用的表或视图。可使用 CHECK TABLE 语句检查视图定义是否存在这类问题。

MySQL 可以在单个数据表上创建视图。

例子:

-- 在单表上创建视图查询女同学的视图
1.  create view view_female_stu
2. as
3. select * from tb_student where stu_gender = '女';
查询视图

视图一经定义之后,就可以如同查询数据表一样,使用 SELECT 语句查询视图中的数据,语法和查询基础表的数据一样。

视图用于查询主要应用在以下几个方面:

  • 使用视图重新格式化检索出的数据。
  • 使用视图简化复杂的表连接。
  • 使用视图过滤数据。

DESCRIBE 可以用来查看视图,语法如下:

DESCRIBE 视图名;

通过 DESCRIBE 语句查看视图 v_students_info 的定义,输入的 SQL 语句和执行结果如下所示。

mysql> DESCRIBE v_students_info;
+----------+---------------+------+-----+------------+-------+
| Field    | Type          | Null | Key | Default    | Extra |
+----------+---------------+------+-----+------------+-------+
| s_id     | int(11)       | NO   |     | 0          |       |
| s_name   | varchar(45
  • 3
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MVC(Model-View-Controller)是一种软件架构模式,常用于构建用户界面并处理用户交互的程序。在使用MVC访问MySQL数据库完成增删改查操作时,我们可以遵循以下步骤: 1. 模型(Model)层:模型负责与数据库进行交互,包括建立数据库连接、执行SQL语句以及处理数据库返回的结果。我们可以使用MySQL提供的官方驱动程序或者一些开源框架(如Hibernate、MyBatis)来简化数据库操作。 2. 视图(View)层:视图负责展示数据和接收用户的输入,对于数据库操作的结果,可以通过视图将其展示给用户。在MVC中,视图通常被定义为一些用户界面组件,如网页、移动应用程序的界面等。 3. 控制器(Controller)层:控制器负责接收来自视图层的用户输入,并将其转发给模型层进行相应的数据库操作。控制器还可以对模型层返回的数据进行处理,再将处理后的结果返回给视图层展示给用户。在MVC中,控制器可以看作是模型和视图之间的桥梁。 通过按照上述步骤使用MVC访问MySQL数据库进行增删改查操作,我们可以实现以下功能: - 增加数据:用户在视图层中输入数据,控制器将其传递给模型层对数据库进行增加操作。 - 删除数据:用户在视图层中选择要删除的数据,控制器将其传递给模型层对数据库进行删除操作。 - 修改数据:用户在视图层中选择要修改数据并输入修改后的内容,控制器将其传递给模型层对数据库进行修改操作。 - 查询数据:用户在视图层中选择相应的查询条件,控制器将其传递给模型层对数据库进行查询操作,并将查询结果返回给视图层展示给用户。 通过使用MVC访问MySQL数据库完成增删改查操作,可以使代结构更加清晰、可维护性更高,同时也能更好地分离数据层和用户界面层之间的耦合度,提供更好的用户体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值