主播网站怎么建立,中国建筑企业,网页设计需要用什么软件,开发app需要什么技术目录
一、创建数据库关系图
二、创建与管理试图
1. 视图概述
2.视图的作用
3. 创建视图的基本语法
4. 管理视图的基本语法
#xff08;1#xff09;修改视图
#xff08;2#xff09;删除视图
#xff08;3#xff09;查询视图
#xff08;4#xff09;操作视…目录一、创建数据库关系图二、创建与管理试图1. 视图概述2.视图的作用3. 创建视图的基本语法4. 管理视图的基本语法1修改视图2删除视图3查询视图4操作视图三、创建与管理索引1. 索引概述2.SQL Server 中表的存储3.索引的优点4.索引的分类5. 创建索引的基本语法1语法格式如下2索引使用原则6. 管理索引的基本语法1分析索引2维护索引3修改索引4重命名索引5查看索引6删除索引7.实战训练一、创建数据库关系图使用datagrip软件创建learn数据库的关系图二、创建与管理试图1. 视图概述视图是从一个或几个基本表导出的表用户通过它来浏览数据表中感兴趣的部分或全部数据而数据的物理存放位置仍在表中。视图是一张虚拟的表虚拟表的含义包含两方面(1) 数据库中只存放视图的定义而不存储视图对应的数据(2) 视图中的数据来自基本表是在视图被引用时动态生成的打开视图时看到的记录实际仍存储在基本表中。视图一旦定义好就可以和基本表一样进行查询、删除与修改等操作。而且视图中的数据与基本表中的数据同步。2.视图的作用包括以下 3 个方面1方便用户使用。2提供一定程度的的数据安全性。3保证数据的逻辑独立性。3. 创建视图的基本语法在 T-SQL 语句中创建视图使用 CREATE VIEW 语句基本语法结构如下CREATE VIEW [owner.] view_name [ (column_name [,…] ) ] AS select_statement [with check option]参数说明view_name 是需要创建的视图的名称。column_name 是视图中的列名它是视图中包含的列名。select_statement 是定义视图的 select 语句。with check option 是对视图进行更新操作时强制要求满足子查询中的条件。【实战训练】使用 SSMS 创建视图 view1_student_info要求能够显示学生学号、姓名、课程编号和期末成绩。Create view view1_student_info as SELECT Student.Sno, Sname, Cno, EndScore FROM Score INNER JOIN Student ON Score.Sno Student.Sno【实战训练 】使用 SSMS 修改所创建的视图 view1_student_info要求能够显示学生学号、姓名、性别并按学号升序排列。Alter view view1_student_info As Select Sno, Sname,sex From student order by sno【实战训练 17-3】使用 SQL 语句创建的视图 view2_student_woman要求筛选出性别为女生的学生信息。任务实施①在 SSMS “新建查询” 窗口中录入创建视图的 SQL 语句如下CREATE VIEW view2_student_woman AS SELECT * FROM Student WHERE Sex女 Go②使用 SELECT 语句查看新建视图中的数据SELECT * FROM view2_student_woman【实战训练 17-4】使用 SQL 语句创建的视图 view2_student_info要求能够显示学生学号、姓名、课程编号、课程名称、期末成绩并使用视图输出上述信息。CREATE VIEW view2_student_info AS SELECT Student.Sno, Sname, Course.Cno, Cname, EndScore FROM Course INNER JOIN Score ON Course.Cno Score.Cno INNER JOIN Student ON Score.Sno Student.Sno Go4. 管理视图的基本语法1修改视图在本任务中主要讲解视图定义的修改基本语法结构如下ALTER VIEW [owner.] view_name [ (column_name [,…] ) ] AS select_statement2删除视图DROP VIEW view_name [ ,…n]3查询视图SELECT 目标列表达式 [, 目标列表达式…] from view_name [where 条件]4操作视图添加视图中的数据INSERT [into] view_name [ (column_name [,…] ) ] values(column_values1, column_values2,…)修改视图中的数据UPDATE view_name SET column_name 1变量|表达式 [,column_name 2变量|表达式…] [where 条件]删除视图中的数据DELETE [from] view_name [where 条件]【实战训练 17-5】需求使用 SQL 语句查询学生成绩视图 view2_student_info 中成绩不及格的学生信息。SELECT * FROM view2_student_info WHERE endscore60 Go【实战训练 17-6】需求使用 SQL 语句在视图 view2_student_woman 中插入一条学生信息学号s011180199、姓名严晓燕、性别女、出生日期2001-11-11、班级编号0121902。INSERT INTO view2_student_woman VALUES( s011180199, 严晓燕, 女, 2001-11-11, 0121902) GO【实战训练 17-7】需求使用 SQL 语句通过视图 view2_student_woman 修改学生 “严晓燕” 的信息将其学号修改为 “s01111111”。UPDATE view2_student_woman SET snos01111111 Where sname严晓燕 Go三、创建与管理索引1. 索引概述索引是一种可以加快数据检索速度的数据结构主要用于提高数据库查询数据的性能。在数据库中索引允许数据库程序迅速地找到表中的数据而不必扫描整个表索引就是表中数据和相应存储位置的列表。索引可以大大减少数据库管理系统查找数据的时间。要提高查询数据的速度必须对表中的记录按照查询字段的大小进行排序。对表中的记录按照一个或多个字段的值的大小建立逻辑顺序的方法就是创建索引。一般在基本表上建立一个或多个索引能够提供多种存取路径快速定位数据的存储位置。2.SQL Server 中表的存储在 SQL Server 数据库中一个表的存储是由数据页和索引页两部分组成。数据页用来存放表中各列数据索引页则从索引码开始包含组成特定索引的列中的数据。当进行数据检索时系统先搜索索引页面从索引项中找到所需数据的指针再直接通过指针从数据页面中读取数据。索引一旦创建将由数据库自动管理和维护。索引可提供一种快速访问指定记录的方法。3.索引的优点使用索引进行数据检索具有以下优点加快数据检索速度。加快表与表之间的连接速度。保证数据记录的唯一性。在使用 order by 和 group by 子句对数据进行检索时其执行速度将大大提高。4.索引的分类SQL Server 中的索引按组织方式可以分为聚集索引和非聚集索引。聚集索引能够对表中的数据行进行物理排序数据记录按聚集索引键的次序存储。当建立主键约束时如果表中没有聚集索引SQL Server 会将主键列作为聚集索引也是唯一索引一个表只能有一个聚集索引。非聚集索引不改变表中数据行的物理存储顺序数据与索引分开存储在非聚集索引中仅包含索引值和指向数据行的指针。为一个表建立索引默认都是非聚集索引。一个表最多可以建立 249 个非聚集索引。聚集索引和非聚集索引都可以创建唯一约束和复合索引唯一索引SQL server 可确保被索引的列不存在重复值包含 null 值复合索引根据表中两列或者多列的组合建立的索引。5. 创建索引的基本语法1语法格式如下CREATE [unique] [ clustered | nonclustered ] INDEX index_name ON {table | view} (column [asc | desc] [,...n]) [on filegroup]2索引使用原则在 SQL Server 中使用索引应注意以下原则索引是非显示的查询时自动调用。创建主键时自动创建聚集索引。创建唯一约束时自动创建唯一性非聚集索引。可以创建多列索引以提高基于多列数据查询数据的速度。如果创建索引时未指定索引类型默认为非聚集索引。多记录行数据表适合创建索引几乎无数据的表不适合创建索引。常用查询字段如姓名应创建索引域小字段如性别不应创建索引。用于聚合函数的列、group by 分组字段的列、order by 排序字段的列适合建索引。6. 管理索引的基本语法1分析索引指明引用索引SELECT 字段列表 FROM 表名 WITH (INDEX (索引名) ) WHERE 查询条件使用 SHOWPLAN_ALL 分析索引set showplan_all on | off 或 set showplan_text on | off2维护索引重建索引ALTER INDEX 用户名.索引名 rebuild ALTER INDEX 索引名 monitoring usage --如何标识索引的使用情况3修改索引SP_RENAME [objname ] object_type, [newname ] new_name,[[ objtype ] object_type]4重命名索引EXEC SP_RENAME table_name.old_index_name, new_index_name5查看索引SP_HELPINDEX [objname ] name6删除索引DROP INDEX table.index | view_index[,...n]7.实战训练使用 SSMS 在 Student 表上为 “学号” 字段添加唯一的聚集索引将该索引命名为 ix_student升序排列。CREATE unique clustered INDEX ix_student ON Student (sno)使用 SSMS 在 Student 表上为 “Birth” 字段添加索引将该索引命名为 ix_birth。CREATE nonclustered INDEX ix_birth ON Student (Birth)使用 SQL 语句为 Department 表上的 “Dno” 列创建唯一聚集索引命名为 ix_Dno。USE SCC CREATE unique clustered INDEX ix_Dno ON Department(Dno)使用 SQL 语句为 Score 表上的 “Sno” 和 “Cno” 列创建复合索引命名为 Score_ind。USE SCC CREATE INDEX Score_ind ON Score(Sno,Cno)使用 ix_student 索引查询出生日期在 1999 年以前的学生。SELECT * FROM student WITH (INDEX(ix_student)) WHERE Birth1999-1-1使用 ix_brith 索引查询出生日期在 1999 年以前的学生并分析哪些索引被系统采用。SET SHOWPLAN_ALL ON GO SELECT * FROM STUDENT WITH (INDEX(IX_BIRTH)) WHERE BIRTH1999-1-1 GO SET SHOWPLAN_ALL OFF GO