【数据库实验报告】索引,数据插入,数据查询

索引

建立索引
[例3.13] 为学生-课程数据库中的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);

在这里插入图片描述

修改索引
[例3.14] 将SC表的SCno索引名改为SCSno

标准sql:ALTER INDEX SCno RENAME TO SCSno;
在这里插入图片描述
TSQL不支持。

查看大佬博客
使用EXEC sp_rename '表名.旧索引名', '新索引名', 'index'在这里插入图片描述

删除索引
[例3.15] 删除Student表的Stusno索引

标准sql:DROP INDEX Stusname;
tsql:DROP INDEX Stusname ON Student

数据更新-插入数据

两种插入方式:插入一个元组;插入子查询结果(多个元组)
这里写一下前者:插入一个元组
语句格式:

INSERT
INTO <表名> [(<属性列1>[,<属性列2 >)]
VALUES (<常量1> [,<常量2>]);

说明:
关于属性列,可以1.不写2.写若干个
1.不写的话,下面的value必须和元组的属性的默认顺序一一对应
2.写若干个,顺序无所谓,但value必须和其一一对应。

[例3.69]将一个新学生元组(学号:201215128;姓名:陈冬;性别:男;所在系:IS;年龄:18岁)插入到Student表中。
INSERT
INTO Student (Sno,Sname,Ssex,Sdept,Sage)
VALUES ('201215128','陈冬','男','IS',18);
[例3.70]将学生张成民的信息插入到Student表中。
INSERT
INTO Student 
VALUES ('201215126','张成民','男',18,'CS');
[例3.71] 插入一条选课记录( ‘200215128’,'1 ')

已将插入Course 1的前提下,下面代码才能正常运行,因为FK

INSERT
INTO SC
VALUES ('201215128','1',NULL)

数据查询

语句格式

SELECT [ALL|DISTINCT] <目标列表达式>[,<目标列表达式>]FROM <表名或视图名>[,<表名或视图名> ]|(SELECT 语句)
[AS]<别名> [ WHERE <条件表达式> ] [ GROUP BY <列名1> [ HAVING <条件表达式> ] ] [ ORDER BY <列名2> [ ASC|DESC ] ];

简单解释:

  1. ALL,DISTINCT的区别就在于结果有重复元组的时候,前者显示全部,后者只显示一个相同的。后面是列。
  2. FROM指定要查询的表。
  3. WHERE 指定条件。
[例3.16] 查询全体学生的学号与姓名。
SELECT Sno,Sname
FROM Student;

在这里插入图片描述

[例3.17] 查询全体学生的姓名、学号、所在系。
SELECT Sname,Sno,Sdept
FROM Student;

在这里插入图片描述

[例3.18] 查询全体学生的详细记录

全部列:用*

SELECT *
FROM Student;

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值