利用SSMS和T-SQL语句创建、修改、删除博客数据库BlogDB视图,并利用视图完成对基本表的修改工作。单击“视图设计器”工具栏中的“执行SQL”按钮,可以查看查询结果。在“对象管理器”中,展开“数据库”→“BlogDB”节点,用鼠标右键单击“视图”节点,从出现的菜单中选择“打开视图”命令,浏览视图结果。......
2023-11-23
1.索引的基本概念
在关系数据库中,索引是一种单独地、物理地对数据库表中一列或多列的值进行排序的一种存储结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。索引的作用相当于图书的目录,读者可以根据目录中的页码快速找到所需的内容。
2.索引的类型
SQL Sever 2019提供了常用3种索引。
(1)唯一索引(Unique):唯一索引是不允许其中任何两行具有相同索引值的索引。
(2)聚集索引(Clustered Index):也称为聚簇索引,在聚集索引中,表中行的物理顺序与键值的逻辑(索引)顺序相同。一个表只能包含一个聚集索引,即如果存在聚集索引,就不能再指定Clustered关键字。
(3)非聚集索引(Nonclustered Index):也叫非簇索引,在非聚集索引中,数据库表中记录的物理顺序与索引顺序可以不相同。一个表中只能有一个聚集索引,但表中的每一列都可以有自己的非聚集索引。如果在表中创建了主键约束,SQL Server 2019将自动为其产生唯一性约束。在创建主键约束时,如果指定Clustered关键字,则将为表产生唯一聚集索引。
3.创建索引原则
创建索引可以加快数据的检索速度、加速表与表之间的连接等,但过多地创建索引会占据磁盘空间,降低数据的维护速度,所以在创建索引时,必须权衡利弊。
一般在下列情况下适合创建索引:(www.chuimin.cn)
(1)经常被查询搜索的列,如经常出现在WHERE子句的逻辑表达式中的列;
(2)在ODER BY子句中使用的列;
(3)外键或主键列;
(4)值唯一的列。
在下列情况下不适合创建索引:
(1)在查询中很少被引用的列;
(2)包含太多重复值的列;
(3)数据类型为bit、text、image等的列不能创建索引。
有关SQL Server 数据库技术及应用的文章
利用SSMS和T-SQL语句创建、修改、删除博客数据库BlogDB视图,并利用视图完成对基本表的修改工作。单击“视图设计器”工具栏中的“执行SQL”按钮,可以查看查询结果。在“对象管理器”中,展开“数据库”→“BlogDB”节点,用鼠标右键单击“视图”节点,从出现的菜单中选择“打开视图”命令,浏览视图结果。......
2023-11-23
图5—9“设计表”窗口④在“设计表”窗口中选择要创建索引的字段“成绩”,右键点击打开快捷菜单。图5—10“索引/键”对话框⑥在“索引/键”对话框中单击“添加”按钮,系统将自动创建索引。......
2023-11-24
表示索引为唯一性索引。指索引的长度,必须是字符串类型才可以使用。如果在创建索引时没写索引名称,MySQL会自动用字段名作为索引名称。其中table_name是要增加索引的表名,column_list指出对哪些列进行索引,多列时各列之间用逗号分隔。另外,ALTER TABLE允许在单个语句中更改多个表,因此可以在同时创建多个索引。另外,不能用CREATE INDEX语句创建PRIMARY KEY索引。......
2023-10-29
对绝大多数对象来说,标识符是必不可少的,但对某些对象如约束来说,是否规定标识符是可选的。为了提供完善的数据库管理机制,SQL Server对于对象的标识符设计了严格的命名规则。b.数字:0~9,但数字不得作为标识符的第一个字符。④标识符的长度不得超过128个字符长度。规则标识符严格遵守标识符命名规则,所以在T-SQL语句中凡是规则标识符都不必使用界定符号进行界定,例如“student”“学生信息表”都是合法有效的规则标识符。......
2023-11-23
1)模块化设计每个存储过程是一个模块,具备一定的功能。4)增强安全性授予用户执行存储过程的权限,不授予用户直接访问存储过程涉及的表的权限,从而保证表中数据的安全。......
2023-11-23
关系完整性约束用于保证关系模型(表)中数据的正确性、一致性和有效性,防止数据被破坏。若发现主键为空或已有相同主键值存在,将给出错误信息并要求用户纠正以保证数据的完整性。例如;在参照关系SC中插入数据时,检查SID的值是否在被参照关系Student的SID属性值中存在。在删除被参照关系Student的元组时,也要检查SID是否被参照关系SC引用,根据关系设置确定是否删除或者级联删除等从而避免该学生不存在,却还有该学生的选课情况。......
2023-11-23
掌握基本的SELECT查询语句及其相关子句的用法。进行多表复杂查询。在BlogDB数据库中,统计已发表评论的用户人数。代码如下:USE BlogDBGOSELECT x.Username,x.Sex,y.Subject,y.ShiJianFROM Users x LEFT OUTER JOIN Article yON x.Username=y.Username4.问题讨论SELECT查询语句能否修改数据库中的数据?子查询能嵌套使用吗?......
2023-11-23
相关推荐