我的编程空间,编程开发者的网络收藏夹
学习永远不晚

如何在Mysql数据库中使用视图、事务和索引

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

如何在Mysql数据库中使用视图、事务和索引

今天就跟大家聊聊有关如何在Mysql数据库中使用视图、事务和索引,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

视图是对若干张基本表的引用,一张虚表,只查询语句执行结果的字段类型和约束,不存储具体的数据(基本表数据发生了改变,视图也会跟着改变),方便操作,特别是查询操作,减少复杂的SQL语句,增强可读性。

1.————创建视图:

create view 视图名称(一般以v_开头) as 查询语句;

2.————查看视图:

select * from 视图名称;

3.————删除视图:

drop view 视图名称;

事务

1.特性:四大特性ACID

(1)原子性(Atomicity):一个事务必须被视为一个不可分割的最小工作单元,整个事务 中的所有操作要么全部提交成功,要么全部失败回滚,对于一个事务来说,不可能只执行其中的一部分操作。

(2)一致性(Consistency):数据库总是从一个一致性的状态转换到另一个一致性的状态。

(3)隔离性(Isolation):一个事务所做的修改在最终提交以前,对其他事务是不可见的。

(4)持久性(Durability):一旦事务提交,则其所做的修改会永久保存到数据库。

2.使用:

(1)开启事务:开启事务后执行修改命令,变更会为护到本地缓存,而不是物理表中。
begin;或者start transaction;

(2)回滚事务:放弃缓存中变更的数据,表示事务执行失败,回到开始事务的状态。
rollback;

(3)提交事务:将缓存中的数据变更维护到物理表中。
commit;

索引

索引是一种特殊的文件(InnoDB数据表上的索引是表空间的一个组成部分),它们包含着对数据表里所有记录的位置信息,更通俗的说,数据库索引好比是一本书前面的目录,能加快数据库的查询速度。

1.使用:

(1)————查看索引:

show index from 表名;

(2)————创建索引:

create index 索引名称 on 表名(字段名称(长度));

(3)————删除索引:

drop index 索引名称 on 表名;

2.验证性能:

(1)开启运行时间检测:

set profiling=1;

(2)查找第十万条数据:

select * from test_index where title='ha-99999';

(3)为表建立索引:

create index title_index on test_index(title(10));

(4)查找第十万条数据:

select * from test_index where title='ha-99999';

(5)查看执行时间:

show profiles;

如何在Mysql数据库中使用视图、事务和索引

总结:索引可以极大提升查询速度,但是创建索引的时间比查询的速度要慢很多,所以 数据表经常更新时,不适合使用索引,当数据表数据很大时,并且长时间不更新时,建 议使用索引,其他情况不建议使用。

用户管理

1.————查看用户: 

select host,user,authentication_string from user;

 ————查看用户权限:

show grants for 用户名@主机;

2.————创建用户并赋予权限:'

grant 权限名称 on 数据库名.* to ‘用户名'@'主机' identified by ‘密码';

3.————修改权限: 

grant 权限名称 on 数据库名.* to ‘用户名'@'主机' where grant option;

 刷新权限:

flush privileges;

4.————修改密码:

update user set authentication_string=password(‘新密码') where user='用户名';

5.————删除用户:
卸载:

drop drop user ‘用户名'@'主机';

 手动删除:

delete from user where user='用户名';

 刷新权限:

flush privileges;

自连接

将多张相似表的数据汇总到一个表中,将自己与自己相连接进行查询。

1.————用法:

select * from 表名 as 别名1 inner join 表名 as 别名2 on 条件;

2.————案例:

如何在Mysql数据库中使用视图、事务和索引

aid为编号,pid为所属编号
查询山西省的所有城市:

select city.* from areas as cityinner join areas as province 
on city.pid=province.aidwhere province.atitle='山西省';

如何在Mysql数据库中使用视图、事务和索引

看完上述内容,你们对如何在Mysql数据库中使用视图、事务和索引有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

如何在Mysql数据库中使用视图、事务和索引

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

如何在SQL Server中创建和使用索引视图

要在SQL Server中创建和使用索引视图,可以按照以下步骤进行操作:创建视图:首先,使用CREATE VIEW语句创建一个视图,定义视图所需的查询逻辑。CREATE VIEW dbo.MyIndexedViewASSELECT co
如何在SQL Server中创建和使用索引视图
2024-06-04

MySQL数据库索引和事务的作用是什么

本篇内容主要讲解“MySQL数据库索引和事务的作用是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL数据库索引和事务的作用是什么”吧!1. 索引1.1 概念索引是为了加速对表中数据行
2023-06-22

MySQL的索引在Python中如何合理创建和使用?(Python环境下如何为MySQL数据库合理创建和使用索引?)

在Python中为MySQL表创建和使用索引可以提高查询性能。使用create_index()方法创建索引,并使用filter()方法强制查询使用特定索引。最佳实践包括在经常用于where子句的列上创建索引,避免在经常更新的列上创建索引,并定期分析索引使用情况。Python提供内置函数get_indexes()、drop_index()和has_index()来管理索引。
MySQL的索引在Python中如何合理创建和使用?(Python环境下如何为MySQL数据库合理创建和使用索引?)
2024-04-02

如何在MySQL中维护索引和数据表

如何在MySQL中维护索引和数据表?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。查找和修复数据表冲突数据表最糟糕的事情就是发生冲突。使用MyISAM存储引擎时,
2023-06-15

在Laravel中如何使用数据库事务

小编给大家分享一下在Laravel中如何使用数据库事务,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!什么是数据库事务?在我们开始研究 Laravel 的数据库事务之前,让我们先看看它们是什么以及它们如何有益。对于什么是数据
2023-06-22

如何使用SQL语句在MySQL中进行数据索引和优化?

如何使用SQL语句在MySQL中进行数据索引和优化?在使用MySQL数据库时,数据索引和优化是非常重要的。适当地创建索引和优化查询语句可以大大提高数据库的性能。本文将详细介绍如何使用SQL语句在MySQL中进行数据索引和优化,并提供具体的代
如何使用SQL语句在MySQL中进行数据索引和优化?
2023-12-17

如何使用 Python 在 MySQL 数据库中存储和检索日期?

要在 MySQL 数据库中插入日期,您的表中需要有一列类型为日期或日期时间的列。完成后,您需要将日期转换为字符串格式,然后再将其插入数据库。为此,您可以使用 datetime 模块的 strftime 格式化函数。示例from dateti
2023-10-22

MySQL的视图在Python中如何定义和使用?(Python环境下如何定义和使用MySQL的视图?)

Python中定义MySQL视图可以使用CREATEVIEW语句或SQLAlchemy。CREATEVIEW语句从现有表中创建虚拟视图,而SQLAlchemy使用MetaData和create_view()方法。从视图中检索数据可以使用SELECT语句或SQLAlchemy的Table对象和select()方法。视图简化查询、抽象数据、提高维护性和安全性。但需要注意,视图不是物理表,不能直接更新,其性能受底层表结构和查询复杂度影响。
MySQL的视图在Python中如何定义和使用?(Python环境下如何定义和使用MySQL的视图?)
2024-04-02

如何使用多个表中的数据创建 MySQL 视图?

MySQL UNION 运算符可以组合两个或多个结果集,因此我们可以使用 UNION 运算符创建一个包含多个表数据的视图。为了理解这个概念,我们使用具有以下数据的基表“Student_info”和“Student_detail” -mysq
2023-10-22

如何在MariaDB中使用视图来简化数据查询

在MariaDB中,可以通过创建视图来简化数据查询。视图是一个虚拟的表,它只包含查询语句的结果集,不包含实际的数据。通过视图,可以将复杂的查询语句封装在一个视图中,然后在需要的地方直接使用视图来查询数据,而不必每次都编写复杂的查询语句。以
如何在MariaDB中使用视图来简化数据查询
2024-04-09

我们如何查看存储在特定 MySQL 数据库中的视图的元数据?

INFORMATION_SCHEMA 数据库有一个 VIEWS 表,其中包含视图元数据,即有关视图的数据。为了说明这一点,我们以名为“Info”的视图为例。示例以下查询将显示名为“Info”的视图的元数据“信息”-mysql> SELECT
2023-10-22

编程热搜

目录