数据库复习讲述.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
完整性约束--PRIMARY KEY 定义列级主键约束的语法格式如下: 列名1 数据类型 [CONSTRAINT 约束名] PRIMARY KEY 定义表级主键约束的基本格式为: [Constraint 约束名] primary key (列名1[,列名2,…]) 完整性约束-- FOREIGN KEY 定义列级外键约束的语法格式如下: 列名1 数据类型[CONSTRAINT 约束名]REFERENCES ref_table (列名) 定义表级外键的命令基本格式 [Constraint 约束名] foreign key (列名1[,列名2,…])references 表名(列名1[,列名2,…]) (注意:定义外键时要保证被定义为外健的属性在参照表中已经被定义为主健 ) 例:建立基本表:学生表,课程表,选课表,加入主键,外键约束,并要求学生姓名和课程名不为空。 create table student (Sno char(6) primary key, S_Name char(8) not null, S_Age int , S_Sex char(2) , S_Dept char(20), constraint c1 check(S_Sex in (男,女))) create table course (Cno char(4) primary key, C_Name char(20) not null, C_Type char(10)) create table sc (Sno char(6), Cno char(4), Grade smallint, Constraint c2 Primary key(sno,cno), Constraint c3 Foreign key (sno) references student(sno ), Constraint c4 Foreign key (cno) references course(cno)) 创建数据库表例题: 聚集索引(clustered) 是一种物理存储方式,数据表中的数据按照索引的顺序保存在磁盘空间中。 一个数据表只能建立一个聚集索引 非聚集索引(nonclustered) 是一种逻辑存储方式 索引的次序并不影响数据的物理存储顺序 一个数据表最多可以建立249个非聚集索引 3. 创建索引 索引是对数据库表中一个或多个字段的值进行排序而创建的一种分散存储结构。包括如下两类: 建立索引 Create [unique][clustered|nonclustered] index 索引名 on 表名(列名1 [次序], 列名2 [次序],…) 缺省情况下,创建的索引是非唯一的非聚集索引。 用次序指定索引值的排列次序,升序:ASC,降序:DESC。缺省值:ASC 必须先建立聚集索引,后建立非聚集索引 SELECT [ALL|DISTINCT] 列名[, 列名…] FROM 表名[, 表名…] 4.数据查询 [WHERE 条件表达式] [GROUP BY 列名[, 列名…][HAVING 条件表达式]] [ORDER BY 列名 [ASC|DESC] [, 列名 [ASC|DESC]…] 从表中(From子句),选择满足记录选择条件(Where子句)的记录,并对他们进行分组(Group子句, Having子句表达组选择条件 )统计(统计函数)和排序(Order by 子句),并投影(Select子句) ,形成查询结果集 统计函数:Sum(),avg(),min(),max(),count(*),count() 查询 【例】查询所有男性读者的读者编号、读者姓名和年龄,并按照出生日期的降序排列。 SELECT ReaderNo 读者编号, ReaderName 读者姓名, year(getdate())-year(ReaderBirth) AS 年龄, ReaderBirth AS 出生日期 FROM Reader WHERE ReaderSex=男 ORDER BY ReaderBirth DESC ??? (多表)连接查询 连接查询:结果集中字段或查询条件涉及的字段来源于多个表 连接表的先决条件:涉及到的表都有关联关系、通过外键实现1. 1. SELECT 表名.列名[ ,...n ] FROM 表名[ ,...n ] WHERE 表名1.列名 连接符 表名2.列名 [ ,...n ] [AND 查询条件] 其中连接符指=、、、=、=、。 2. FROM子句建立连接的语法格式是: FROM 表1 [join_type] JOIN 表2 ON 连接条件 [joi

文档评论(0)

2266670 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档