当前位置: 首页 > news >正文

数据库7(数据定义语句,视图,索引)

1.数据定义语句

SQL数据定义语言(DDL)用于定义和管理数据库结构,包括创建、修改和删除
数据库对象。常见的DDL语句包括CREATE、DROP和ALTER。
它的操作的是对象,区分操作数据的语句:INSERT,DELETE,UPDATE
示例,

创建一个表

create table students
{
stuId varchar(5) not null,
}
参数分别为:列名 类型 是否可为空,

修改表结构

alter table students add gender varchar(2)not null default ‘女’
增加一列
alter table students drop column sex
删除一列

删除表

drop table students

2.视图

视图是一个虚拟表,其内容由查询定义。但其本身没有存储数据,数据还在原表中。视图主要的作用是可以方便查询管理,更易理解。视图可以使操作更加简单,也提高了数据安全性。
知识点:视图的优点/作用,视图的类型,视图的局限/缺点(order by语句不允许创建视图)

创建视图

create view abc
as
select ……
创建一个视图,名为abc,它的内容是select语句选出的数据表内容

查看视图

select * from abc

describe abc

修改视图

create of replace view abc
as
select……

alter view abc
as
select ……

更新视图信息

更新视图中的数据转换为更新表的数据
更新abc视图中学生姓名
update abc
set sno=‘小红’
where stu_id=‘111’
=>
update students
set sno=‘小红’
where stu_id=‘111’

删除视图

drop view if exists abc

3.索引

聚簇索引

找到了索引就找到了需要的数据
B树
多叉平衡查找树,可以有多个子节点
节点中的元素包含键值和数据,节点中的键值从大到小排列。
父节点当中的元素不会出现在子节点中
所有的叶子节点都位于同一层,叶子节点具有相同的深度,叶子节点之间没有指针连接
在这里插入图片描述

B+树只有叶子节点才会存储数据,非叶子节点只存储键值key;叶子节点之间使用双向指针连接,最底层的叶子节点形成了一个双向有序链表。
父节点当中的元素出现在子节点中,B+树的最底层叶子节点包含了所有的索引项。
在这里插入图片描述

非聚簇索引(辅助索引)

索引的存储和数据的存储是分离的,需要根据索引上的值(主键)再次回表查询
辅助索引的键值是可以重复的。
在这里插入图片描述
图片来源网页:https://developer.aliyun.com/article/831250,关于索引更详细的知识可以通过该网页了解

相关文章:

  • 单缓冲、双缓冲、多缓冲与缓冲池详解
  • STM32学习之ARM内核自带的中断
  • 【AI论文】SynWorld:用于代理行为知识细化的虚拟场景合成
  • 数据结构与算法-数学-(同余,线性同余方程,中国剩余定理,卡特兰数,斯特林数)
  • 用c语言写一个linux进程之间通信(聊天)的简单程序
  • 低代码控件开发平台:飞帆中控件的通信
  • C++内存管理优化实战:提升应用性能与效率
  • 单次 CMS Old GC 耗时长问题分析与优化
  • SQL语法进阶篇(二),数据库复杂查询——窗口函数
  • Python 集合
  • C语言 数据结构 【栈】动态模拟实现
  • 学习日志37—基于变分量子电路的量子机器学习算法综述
  • 气质联用仪器GCMSMS配置CTC 性能测试
  • 拥抱AI,永洪vividime迈进数据智能时代
  • 视频设备轨迹回放平台EasyCVR远程监控体系落地筑牢国土监管防线
  • 常用控件的使用
  • Idea将Java工程打包成war包并发布
  • mysql-INNODB_FT_INDEX_TABLE表中的 first_doc_id 和、last_doc_id 和doc_id
  • 软考(软件设计师)之操作系统
  • GRBL运动控制算法(四)加减速运算