当前位置:主页 > 数据库 > Mysql >

MySQL视图和索引专篇精讲

时间:2023-01-15 11:42:50 | 栏目:Mysql | 点击:

数据库版本:mysql8。0.27

如果以下代码执行有问题欢迎一起探讨

视图View

什么是视图?

视图是一个虚拟表,是sql语句的查询结果,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据,在使用视图时动态生成。视图的数据变化会影响到基表,基表的数据变化也会影响到视图[insertupdate delete ] ; 创建视图需要create view 权限,并且对于查询涉及的列有select权限;使用create or replace 或者 alter修改视图,那么还需要改视图的drop权限。

代码实现:

学生成绩表

建立视图

-- v_a是视图名  
create view v_a as 
select id,name,score,dept from s1;

查询视图

-- 查询视图v_a
select*FROM v_a;

-- 查询视图时可以增加条件
select*FROM v_a where id=4;

-- 查询数据库中的全部视图
select `TABLE_NAME` from `INFORMATION_SCHEMA`.`TABLES` where `TABLE_SCHEMA` = 'test' and `TABLE_TYPE` = 'view';

删除视图

drop view v_a

索引index

建立索引

创建表时建立

-- 第一种方式
create table t1 (
t varchar(20),
KEY(t desc)
)
-- 第二种方式
create table t1 (
t varchar(20),
index aa(t(20))
)

修改表时建立索引

-- 该语句添加一个主键,这意 味着索引值必须是唯一的,且不能为NULL。
ALTER TABLE tbl_name ADD PRIMARY KEY (column_list);
 --  这条语句创建索引的 值必须是唯一的(除了NULL外,NULL可能会出现多次)。
 ALTER TABLE tbl_name ADD UNIQUE index_name (column_list);
  -- 添加普通索引,索引 值可出现多次。
  ALTER TABLE tbl_name ADD INDEX index_name (column_list);
   -- 该语句指定了索引 为 FULLTEXT ,用于全文索引。
   ALTER TABLE tbl_name ADD FULLTEXT index_name (column_list);

删除索引

drop index t on t;

您可能感兴趣的文章:

相关文章