SQL Server 数据库基本操作入门篇【3】

本文深入介绍了SQL Server中建立、修改和删除索引的操作,以及如何插入数据,强调了索引对查询速度的影响。同时,文章演示了如何在Student、Course和SC表中创建唯一索引,并提供了修改和删除索引的实例。此外,还讲解了插入元组的方法,以及单表查询中选择列和元组的SQL语句示例。
摘要由CSDN通过智能技术生成

本文主要介绍 INDEX、INSERT、SELECT的使用及注意事项,欢迎阅读~


索引的建立与删除

建立索引(INDEX)的目的:加快查询速度

1. 建立索引

语句格式如下:

CREATE [UNIQUE] [CLUSTER] INDEX <索引名> 
ON <表名>(<列名>[<次序>][,<列名>[<次序>] ]);

<表名>: 要建索引的基本表的名字
索引: 可以建立在该表的一列或多列上,各列名之间用逗号分隔
<次序>: 指定索引值的排列次序升序:ASC降序:DESC。缺省值:ASC(即什么都不写时默认为升序排列
UNIQUE: 此索引的每一个索引值只对应唯一的数据记录
CLUSTER: 表示要建立的索引是聚簇索引

🌟举例:
为学生-课程数据库中的 Student,Course,SC三个表建立索引(这三个基本表是在我的上一篇博客中介绍并创建的,不清楚的小伙伴戳这里传送过去:SQL Server 数据库基本操作入门篇【2】)。Student表按学号升序唯一索引,Course表按课程号升序唯一索引,SC表按学号升序课程号降序唯一索引:

CREATE UNIQUE INDEX  Stusno ON Student(Sno);
CREATE UNIQUE INDEX  Coucno ON Course(Cno);
CREATE UNIQUE INDEX  SCno ON SC(Sno ASC,Cno DESC);

此处以查看Course表为例,能看到刚刚的按课程号升序的唯一索引新建成功了
在这里插入图片描述
— — — — — — — — — — — — — — — — — — — — — — — — — —

2. 修改索引

语句格式如下:

ALTER INDEX <旧索引名> RENAME TO <新索引名>;

🌟举例:
将SC表的SCno索引名改为SCSno:

ALTER INDEX SCno RENAME TO SCSno;

在这里插入图片描述
这句标准SQL语句在SQL Server执行是错误的,不能这么写,应写成如下格式:

EXEC sp_rename @objname = '表名.旧索引名', @newname = '新索引名', @objtype = 'index'

建议简写成这个亚子:

EXEC sp_rename 'SC.SCno', 'SCSno', 'index'

注意这里EXEC调用存储过程时会出现提示:注意: 更改对象名的任一部分都可能会破坏脚本和存储过程。不过别着急,这只是一个温馨提示,命令已经成功执行了,更改索引名成功!
在这里插入图片描述
当然也可采取先删除索引再创建的方法,不过无论采用哪种方法都需注意表名.旧索引名
— — — — — — — — — — — — — — — — — — — — — — — — — —

3. 删除索引

语句格式如下:

DROP INDEX <索引名>;

删除索引时,系统会从数据字典中删去有关该索引的描述

🌟举例:
删除Student表的Stusno索引:

DROP INDEX Stusno;

然而在SQL Server中执行该语句后会报错:

  • 12
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值