第3章关系数据库语言SQL2005
第三章 关系数据库查询语言SQL

20112011-2-25
主讲:王颂华
9
3.2 数据定义
3.2.3 索引的建立与删除
1.建立索引 1.建立索引 索引是数据库随机检索的常用手段,它实际上是记 录的关键字与其相应地址的对应表。借助于索引结构,可 以迅速查找到某个属性A 以迅速查找到某个属性A具有指定值的那些元组。对一个 基本表,可以按需要建立若干个索引,以便提供多种存取 路径。 建立索引的语句格式为: CREATE[UNIQUE][CLUSTER]INDEX<索引名 CREATE[UNIQUE][CLUSTER]INDEX<索引名 > ON<表名>(<列名1>[<次序>],[<列名2>[<次序 ON<表名>(<列名1>[<次序>],[<列名2>[<次序 >]]… >]]…);
3.2 数据定义
2)主关键字的定义 一个关系可能有多个候选关键字,但在定义基本表 时只能定义一个主关键字。一个关系的主关键字由一个或 几个属性构成,在CREATE TABLE中声明主关键字有两 几个属性构成,在CREATE TABLE中声明主关键字有两 种方法: (1)在列出关系模式的属性时,在属性及其类型后加 上保留字PRIMARY KEY,表示该属性是主关键字。 上保留字PRIMARY KEY,表示该属性是主关键字。 (2)在列出关系模式的所有属性后,再附加一个声明: PRIMARY KEY(<属性1>[,<属性2>,…]) KEY(<属性1 ,<属性2>,… 如果关键字由多个属性构成,则必须使用第二种方 法。
20112011-2-25 主讲:王颂华 12
3.3 数据查询
3.3.1 单表查询
第3章 SQL语言

SELECT SNO, CNO, SCORE FROM SC WHERE CNO=‘C1’ OR CNO= ‘C2’ 利用“NOT IN”可以查询指定集合外的元组。 例11 查询没有选修C1,也没有选修C2的学生的学号、课 程号和成绩。 SELECT SNO, CNO, SCORE FROM SC WHERE CNO NOT IN(‘C1’, ‘C2’) 等价于: SELECT SNO, CNO, SCORE FROM SC WHERE CNO!=‘C1’ AND CNO!= ‘C2’
注意:函数SUM和AVG只能对数值型字段进行计算。
23
例16 求选修C1号课程的最高分、最低分及之间相差的分 数 SELECT MAX(SCORE) AS MaxScore, MIN(SCORE) AS MinScore, MAX(SCORE) - MIN(SCORE) AS Diff FROM SC WHERE (CNO = 'C1') 例17 求计算机系学生的总数 SELECT COUNT(SNO) FROM S WHERE DEPT='计算机'
1. SQL语言类似于英语的自然语言,简洁易用。 2. SQL语言是一种非过程语言,即用户只要提出“干什 么”即可,不必管具体操作过程,也不必了解数据的 存取路径,只要指明所需的数据即可。 3. SQL语言是一种面向集合的语言,每个命令的操作对 象是一个或多个关系,结果也是一个关系。 4. SQL语言既是自含式语言,又是嵌入式语言。可独立 使用,也可嵌入到宿主语言中。 自含式语言可以独立使用交互命令,适用于终端 用户、应用程序员和DBA; 嵌入式语言使其嵌入在高级语言中使用,供应用 程序员开发应用程序。
10
例1 查询全体学生的学号、姓名和年龄。 SELECT SNO, SN, AGE FROM S 例2 查询学生的全部信息。 SELECT * FROM S 用‘ * ’表示S表的全部列名,而不必逐一列出。
第三章 关系数据库标准语言SQL语言

第三章关系数据库标准语言SQL语言一、选择题1. 在SQL语言中授权的操作是通过________________语句实现的。
C A.CREATEB.REVOKEC.GRANTD.INSERT2. 假定学生关系是S(S#,SNAME,SEX,AGE),课程关系是C(C#,CNAME,TEACHER),学生选课关系是SC(S#,C#,GRADE)。
要查找选修“COMPUTER”课程的“女”学生姓名,将涉及到关系____。
DA.S B.SC,C C.S,SC D.S,C,SC3. 在 MS SQL Server中建立了表 Student(no,name,sex,birthday),no为表的主码,其他属性的默认值为 null。
表中信息如图所示:能够正确执行的插入操作是________。
A No Name Sex Birthday 101 张丽丽女 1967/05/07 102 李芳女 1970/04/14103 王朋男 1982/10/27 A.INSERT INTO student (no,sex) VALUES(102,′男′) B.INSERT INTO student (name,sex) VALUES(′王中′,′男′)D.INSERT INTO student VALUES(106,′王中′,′男′,′1984/03/08′) C.INSERT INTO stude nt VALUES(102,′男′,′王中′,′1984/03/08′) 4. SQL语言中,删除一个表的命令是________。
B A. DELETE B. DROP C. CLEAR D. REMORE 5. 为数据表创建索引的目的是________ AA.提高查询的检索性能B.创建唯一索引C.创建主键D.归类6. 在SQL语言中,条件“RETWEEN 20 AND 30”表示年龄在20到30之间,且________A. 包括20岁和30岁B. 不包括20岁和30岁C. 包括20岁不包括30岁D. 不包括20岁包括30岁7. 为了使索引键的值在基本表中唯一,在建立索引语句中应使用保留字________ AA. UNIQUEB. COUNTC. DISDINCTD. UNION 8. 下面关于SQL语言的说法中,哪一种说法是错误的? ________ AA. 一个SQL数据库就是一个基本表B. SQL语言支持数据库的三级模式结构C. 一个基本表可以跨多个存储文件存放,一个存储文件可以存放一个或多个基本表D. SQL的一个表可以是一个基本表,也可以是一个视图二、简答题1. 什么是基本表?什么是视图?两者的区别和联系是什么?【解答】基本表是本身独立存在的表,在SQL中一个关系就对应一个表。
第3章:关系数据库标准语言SQL

例6:建立一个“课程”表Course. :建立一个“课程” Create table Course (Cno Cpno Char(4) Primary Key, , Char (4) , Cname Char (40) , Ccredit Smallint, , Foreign Key (Cpno) References Course(Cno) );
不论基本表中原来是否已有数据, 不论基本表中原来是否已有数据 , 新增加 的列一律为空值。 的列一律为空值。
例9:将年龄的数据类型改为整型。
ALTER TABLE Student Alter Column Sage Int; ;
修改原有的列定义有可能会破坏已有数据。 修改原有的列定义有可能会破坏已有数据。
group by:此短语将查询结果按某一列或某几 :
列的值进行分组。Having子句用于与group 列的值进行分组。Having子句用于与group by 子句用于与 子句配合使用,用于说明分组条件。 子句配合使用,用于说明分组条件。
查询分类
单表查询 连接查询 嵌套查询 集合查询
CREATE TABLE Student (Sno Ssex Sage Sdept
CHAR(5) NOT NULL UNIQUE,
Sname CHAR(20) UNIQUE, ,
CHAR(1) , INT, , CHAR(15)); ;
修改
Alter table <表名 表名> 表名
Add <新列名> <新列类型> (列宽度)[完整性约束] Drop Column <列名>|<完整性约束名> Alter Column <列名> <列类型> (列宽度) P87例8,例9,例10 , ,
数据库系统教程课后答案(施伯乐)(第二版)

目录第1部分课程的教与学第2部分各章习题解答及自测题第1章数据库概论1.1 基本内容分析1.2 教材中习题1的解答1.3 自测题1.4 自测题答案第2章关系模型和关系运算理论2.1基本内容分析2.2 教材中习题2的解答2.3 自测题2.4 自测题答案第3章关系数据库语言SQL3.1基本内容分析3.2 教材中习题3的解答3.3 自测题3.4 自测题答案第4章关系数据库的规范化设计4.1基本内容分析4.2 教材中习题4的解答4.3 自测题4.4 自测题答案第5章数据库设计与ER模型5.1基本内容分析5.2 教材中习题5的解答5.3 自测题5.4 自测题答案第6章数据库的存储结构6.1基本内容分析6.2 教材中习题6的解答第7章系统实现技术7.1基本内容分析7.2 教材中习题7的解答7.3 自测题7.4 自测题答案第8章对象数据库系统8.1基本内容分析8.2 教材中习题8的解答8.3 自测题8.4 自测题答案第9章分布式数据库系统9.1基本内容分析9.2 教材中习题9的解答9.3 自测题9.4 自测题答案第10章中间件技术10.1基本内容分析10.2 教材中习题10的解答10.3 自测题及答案第11章数据库与WWW11.1基本内容分析11.2 教材中习题11的解答第12章 XML技术12.1基本内容分析12.2 教材中习题12的解答学习推荐书目1.国内出版的数据库教材(1)施伯乐,丁宝康,汪卫. 数据库系统教程(第2版). 北京:高等教育出版社,2003(2)丁宝康,董健全. 数据库实用教程(第2版). 北京:清华大学出版社,2003(3)施伯乐,丁宝康. 数据库技术. 北京:科学出版社,2002(4)王能斌. 数据库系统教程(上、下册). 北京:电子工业出版社,2002(5)闪四清. 数据库系统原理与应用教程. 北京:清华大学出版社,2001(6)萨师煊,王珊. 数据库系统概论(第3版). 北京:高等教育出版社,2000(7)庄成三,洪玫,杨秋辉. 数据库系统原理及其应用. 北京:电子工业出版社,20002.出版的国外数据库教材(中文版或影印版)(1)Silberschatz A,Korth H F,Sudarshan S. 数据库系统概念(第4版). 杨冬青,唐世渭等译. 北京:机械工业出版社,2003(2)Elmasri R A,Navathe S B. 数据库系统基础(第3版). 邵佩英,张坤龙等译. 北京:人民邮电出版社,2002(3)Lewis P M,Bernstein A,Kifer M. Databases and Transaction Processing:An Application-Oriented Approach, Addison-Wesley, 2002(影印版, 北京:高等教育出版社;中文版,施伯乐等译,即将由电子工业出版社出版)(4)Hoffer J A,Prescott M B,McFadden F R. Modern Database Management. 6th ed. Prentice Hall, 2002(中文版,施伯乐等译,即将由电子工业出版社出版)3.上机实习教材(1)廖疆星,张艳钗,肖金星. PowerBuilder 8.0 & SQL Server 2000数据库管理系统管理与实现. 北京:冶金工业出版社,2002(2)伍俊良. PowerBuilder课程设计与系统开发案例. 北京:清华大学出版社,20034.学习指导书(1)丁宝康,董健全,汪卫,曾宇昆. 数据库系统教程习题解答及上机指导. 北京:高等教育出版社,2003(2)丁宝康,张守志,严勇. 数据库技术学习指导书. 北京:科学出版社,2003(3)丁宝康,董健全,曾宇昆. 数据库实用教程习题解答. 北京:清华大学出版社,2003 (4)丁宝康. 数据库原理题典. 长春:吉林大学出版社,2002(5)丁宝康,陈坚,许建军,楼晓鸿. 数据库原理辅导与练习. 北京:经济科学出版社,2001第1部分课程的教与学1.课程性质与设置目的现在,数据库已是信息化社会中信息资源与开发利用的基础,因而数据库是计算机教育的一门重要课程,是高等院校计算机和信息类专业的一门专业基础课。
第3章 关系数据库标准语言SQL_第4版(1-3)

学分 Ccredit 4 2 4 3 4 2 4
SC表
学号 Sno
200215121 200215121 200215121 200215122 200215122
课程号 Cno
1 2 3 2 3
成绩 Grade
92 85 88 90 80
§3.3 数据定义
SQL的数据定义功能: 模式定义、表定义、视图 和索引的定义
被参照建立一个“学生选课”表SC CREATE TABLE SC Cno CHAR(4), Grade SMALLINT, 列级完整性约束条件, Sno是外码,被参照表是 Student
(Sno CHAR(9) REFERENCES Student(Sno) , 主码由两个属性构 成,必须作为表级 完整性进行定义
用户数据库投入运行后,可根据需要随时逐步修 改模式,不影响数据的运行。 数据操作符统一
2.高度非过程化
非关系数据模型的数据操纵语言“面向过程”,
必须制定存取路径
SQL只要提出“做什么”,无须了解存取路径。 存取路径的选择以及SQL的操作过程由系统自动 完成。
3.面向集合的操作方式
SQL
数据流(Data) 元数据流(Meta Data) 对应于视图和部 分基本表
视图1
视图2
外模式
对应于基本表
基本表1 基本表2 基本表3 基本表4
数据词典
(元数据)
模式
对应于存储 文件
存储文件1 存储文件2 内模式
SQL的基本概念(续)
基本表(BASE TABLE):
是独立存在的表, 一个关系对应一个基本表,
嵌入式语言:嵌入高级语言如C,COBOL, FORTRAN,PB等
第三章 关系数据库标准语言SQL习题
第三章关系数据库标准语言SQL一、单项选择题1.SQL语言就是。
A.过程化语言B.宿主语言C.汇编语言D.非过程化语言2.在视图上不能完成的操作就是。
A.更新视图B.查询C.在视图上定义基本表D.在视图上定义新的视图3.SQL语言集数据查询、数据操纵、数据定义与数据控制功能于一体,其中CREATE、DROP、ALTER语句实现功能。
A.数据查询B.数据操纵C.数据定义D.数据控制4.在SQL语言中,删除一个视图的命令就是。
A.DELETEB.DROPC.CLEARD.REMOVE5.在SQL语言中,视图对应于数据库的______。
A.外模式B.模式C.内模式D.存储模式6.在下列SQL语句中,______不就是数据定义语句。
A.CREATE TABLEB.DROP VIEWC.CREATE VIEWD.GRANT7.若要除去数据库中已经存在的表S,可用。
A.DELETE TABLE SB.DELETE SC.DROP TABLE SD.DROP S8.若要在基本表S中增加一列CN,可用。
A.ADD TABLE S(CN CHAR(8))B.ADD TABLE S ALTER(CN CHAR(8))C.ALTER TABLE S ADD (CN CHAR(8))D.ALTER TABLE S (ADD CN CHAR(8))9.若要删除关系模式S(Sno, Sname, Ssex, Sage)的Sage属性,可用。
A.DELETE Sage FROM SB.ALTER TABLE S DROP SageC.UPDATE S SageD.ALTER TABLE S ‘Sage’10.设有学生关系S(Sno, Sname, Sage),课程关系C(Cno, Cname),选修关系SC(Sno, Cno, Grade),其中Sno就是学号,Sname就是学生姓名,Sage就是学生年龄,Cno就是课程号,Cname就是课程名,Grade就是成绩。
sql2005教程
第3章 Transact-SQL语言
与连接服务器相反的是断开服务器,只要在所要断开的服务器上单击右键,选择“断开”即可。注意断开服务器并不是从计算机中将服务器删除,而只是从SQL Server管理平台中删除了对该服务器的引用。需要再次使用该服务器时,只需在SQL Server管理平台中重新连接即可。
2.2 服务器启动、暂停和停止
第2章 服务器管理
2.1 服务器注册
2.1.1 创建服务器组
在一个网络系统中,可能有多个SQL Server服务器,可以对这些SQL Server服务器进行分组管理。分组的原则往往是依据组织结构原则,如将公司内一个部门的几个SQL Server服务器分为一组。SQL Server分组管理由SQL Server管理平台来进行。
2.1.2 服务器注册与连接
在SQL Server管理平台中注册服务器可以存储服务器连接信息,以供将来连接时使用。
有三种方法可以在SQL Server管理平台中注册服务器:
(1)在安装管理平台之后首次启动它时,将自动注册 SQL Server 的本地实例; (2)可以随时启动自动注册过来还原本地服务器实例的注册;
SQL Server分析器(Profiler)是一个图形化的管理工具,用于监督、记录和检查SQL Server 数据库的使用情况。对系统管理员来说,它是一个连续实时地捕获用户活动情况的间谍。可以通过多种方法启动 SQL Server Profiler,以支持在各种情况下收集跟踪输出。如下图所示。
1.4.5 分析服务
数据库第三章习题及答案
第3章关系数据库标准语言SQL一、选择题1、SQL语言是的语言,易学习。
A.过程化 B.非过程化 C.格式化 D.导航式答案:B2、SQL语言是语言。
A.层次数据库 B.网络数据库 C.关系数据库 D.非数据库答案:C3、SQL语言具有的功能。
A.关系规范化、数据操纵、数据控制 B.数据定义、数据操纵、数据控制C.数据定义、关系规范化、数据控制 D.数据定义、关系规范化、数据操纵答案:B4、SQL语言具有两种使用方式,分别称为交互式SQL和。
A.提示式SQL B.多用户SQL C.嵌入式SQL D.解释式SQL 答案:C5、假定学生关系是S(S#,SNAME,SEX,AGE),课程关系是C(C#,CNAME,TEACHER),学生选课关系是SC(S#,C#,GRADE)。
要查找选修“COMPUTER”课程的“女”学生姓名,将涉及到关系。
A.S B.SC,C C.S,SC D.S,C,SC 答案:D6、若用如下的SQL语句创建一个student表:CREATE TABLE student(NO C(4) NOT NULL,NAME C(8) NOT NULL,SEX C(2),AGE N(2))可以插入到student表中的是。
A.(‘1031’,‘曾华’,男,23) B.(‘1031’,‘曾华’,NULL,NULL)C.(NULL,‘曾华’,‘男’,‘23’) D.(‘1031’,NULL,‘男’,23) 答案:B7、当两个子查询的结果时,可以执行并,交,差操作.A.结构完全不一致 B.结构完全一致C.结构部分一致D.主键一致答案:B第8到第10题基于这样的三个表即学生表S、课程表C和学生选课表SC,它们的结构如下:S(S#,SN,SEX,AGE,DEPT)C(C#,CN)SC(S#,C#,GRADE)其中:S#为学号,SN为姓名,SEX为性别,AGE为年龄,DEPT为系别,C#为课程号,CN为课程名,GRADE为成绩。
《数据库原理及应用》教学课件 第三章SQL基础
第三章 SQL基础
本章导读
结构化查询语言(Structured Query Language,SQL) 是关系数据库的标准语言,是集数据查询、数据操纵、数 据定义与数据控制于一体的综合性语言。在关系数据库 中,可以通过它完成数据库内的所有操作。本章首先介绍 SQL的发展及特点,然后通过实例介绍数据库和数据表的 基本操作。
④ MODIFY FILE:指定要修改的文 件。
⑤ ADD FILEGROUP:向数据库中 添加文件组。
⑥ REMOVE FILEGROUP:从数据 库中删除文件组。若文件组不为空,则 无法删除。
⑦ “[ , … N]”表示在前一语句后可 接N个同格式语句。
⑧ “|”表示用其隔开的语句在一次 命令中不可同时选用。
20
3.2 数据库基本操作
3.2.4 修改数据库
【例3-2】 将数据库 test 的名称改为 test1。 ALTER DATABASE test MODIFY NAME=test1
【例3-3】 将数据库SRS的日志文件最大容量改为100 MB。
ALTER DATABASE SRS MODIFY FILE (NAME=SRS_Data, MAXSIZE=100MB)
系列 1, 锐系普列PP2T, 锐, 2普.8 PPT, 2.8
日志文件由一系列日志记录组成,它 记录了数据库的更新情况和用户对数据库 的修改操作等。
当数据库发生损坏时,可以通过日志 文件分析出错原因;当数据丢失时,也可 以使用日志文件恢复数据库。
16
3.2 数据库基本操作
3.2.3 创建数据库
02 用SSMS创建数据库
在 SSMS 中可按如下步骤创建数据库。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3.2.2.1 数 据 类 型
表的内容取决于表的列属性,其中数据 类型是最重要的列属性,它决定了数据 的存储格式、长度、精度、小数位数等。 对于表中的每一列,应该为其指定数据 类型。
1.整数数据类型 7.字符数据类型 2.货币数据类型 8.二进制数据类型 3.位数据类型 9.统一码数据类型 4.精确数值类型 10.时间戳数据类型 5.近似数值类型 11.sql_variant数据类型 6.日期时间类型 12.表数据类型
3.2.2.2 创 建 表
表是数据库的基本组成部分,建立表的方法 有两种,使用T-SQL语句或使用企业管理器。
3.2.2.1 使用CREATE TABLE命令创建表
在指定的数据库中创建表的基本语法格式如 下。
表的定义格式
CREATE TABLE 表名 (列名 数据类型[缺省值][NOT NULL] [,列名 数据类型[缺省值][NOT NULL]]…. [,UNIQUE(列名[,列名]….)] [,PRIMARY KEY(列名[,列名]…)] [,FOREIGN KEY (列名[,列名]…)
表的创建示例
产
生
CREATE TABLE student
学
(sno CHAR(8) NOT NULL,
生
Sname CHAR(20) NOT NULL,
表
Ssex CHAR(1),
Sage INT,
Sclass CHAR(8)
PRINARY KEY (sno)
FOREIGN KEY(sclass)
3.1 SQL的体系结构
3.1.1 SQL的产生与发展 3.1.2 SQL数据库的体系结构 3.1.3 SQL的组成 3.1.4 SQL语句格式符号
返 回
SQL的产生与发展
1970年,美国IBM研究中心的E.F.Codd连续发表多 篇论文,提出关系模型。1972年,IBM公司开始研 制实验型关系数据库管理系统SYSTEM R,配制的 查询语言称为SQUARE (Specifying Queries As Relational Expression )语言,在语言中使用了较多的 数学符号。1974年,Boyce和Chamberlin把SQUARE 修改为SEQUEL (Structured English QUEry Language ) 语言。后来SEQUEL简称为SQL (Structured Query Language ),即“结构式查询语言”,SQL的发音仍 为“sequel”。现在SQL已经成为一个标准 。
显示创建数据库 结果
2. 删除数据库
当确认一个数据库没有需要时,才可以 删除该数据库。
删除数据库的方法: (1)使用企业管理器删除数据库 (2)使用T-SQL语句删除数据库
(1)使用企业管理器删除数据库
(2)使用T-SQL语句删除数 据库
使用 DROP DATABASE语句 语句格式:
DROP DATABASE database_name[,…n]
新建数据库
输入数据库名称
打开数据文件
文
数据库文件位置、大小
件
增
长
信
息
3-5 打开事务日志
文
日志文件位置、大小
件
增
长
信
息
(2)使用创建数据库向导创建数据 库
使用向导建立新的 数据库
(3) 用T-SQL语句创建数据库
创建数据库的语句格式: CREATE DATABASE database_name
SQL数据库的体系结构
SQL 用
用户1
用户2
用户3
用户4
户
View
视图1
视图1
Base table
Stored file
基本表1
基本表2
存储文件1
存储文件2
图3.1 SQL数据库的体系结构
基本表3 存储文件3
基本表4 存储文件4
SQL的组成
核心SQL主要有四个部分: (1) 数据定义语言,即SQL DDL,用于定义SQL模式、基本 表、视图、索引等结构。 (2) 数据操纵语言,即SQL DML。数据操纵分成数据查询和 数据更新两类。其中数据更新又分成插入、删除和修改三种 操作。 (3) 嵌入式SQL语言的使用规定。这一部分内容涉及到SQL 语句嵌入在宿主语言程序中的规则。 (4) 数据控制语言,即SQL DCL,这一部分包括对基本表和 视图的授权、完整性规则的描述、事务控制等内容。
[ ON [PRIMARY] [ <filespec>[,…n] ] [, <filegroup>[,…n] ]
] [ LOG ON { <filespec> [,…n] } ] [ FOR LOAD ∣ FOR ATTACH ] <filespec>:: = ( [ NAME = logical_file_name, ]
FILENAME = ‘os_file_name’ [,SIZE = size] [,MAXSIZE = { max_size UNLIMITED } ] [,FILEGROWTH = growth_increment]) [,…n] <filegroup>:: = FILEGROUP filegroup_name <filespec>[,…n]
名 CKECK :指定表约束条件。 例如:产生表 student, department
表的创建示例
例如:产生表 student, department 产生系表: CREATE TABLE DEPT
( deptno CHAR(8) NOT NULL,
Deptname CHAR(20) NOT NULL, Deptphno CHAR(12), Deptadd CHAR(40) PRINARY KEY (deptno) )
REFERENCES class(classname)
sp_renamedb old_dbname, new_dbname
例如:sp_renamedb ‘zzg’, ‘zzg1’
注意:
只有属于sysadmin服务器角色的成员可以 给数据库更名。
在给数据库更名前,必须在企业管理器中设 置该数据库为单用户状态。在单用户状态下,只 能有一个用户使用该数据库,这时就不能同时打 开企业管理器和查询分析器。
REFERENCES class(classname)
)
检查学生的年龄要大于14岁
CREATE TABLE student
( sno CHAR(8) NOT NULL, Sname CHAR(20) NOT NULL, Ssex CHAR(1), Sage INT CHECK (Sage >= 14), Sclass CHAR(8) PRINARY KEY (sno) FOREIGN KEY(sclass)
3.2 SQL的数据定义
3.2.1 数据库的创建、修改和删除 3.2.2 基本表的创建、修改和删除 3.2.3 索引的创建、修改和删除
返 回
3.2.1 数据库的创建、修改和 删除
对数据库的操作全部针对SQL Server 的数据库的操作命令进行讲解。 包括:
1.创建数据库 2.删除数据库 3.修改数据库
可以为xx MB、KB或百分比(%)。缺省是10%, 最小是64KB 。
创建数据库时的选项
LOG ON:开始定义日志文件; FOR LOAD 表示将备份数据直接装入新建的
数据库; FOR ATTACH 表示从一组已经存在的文件
中建立一个新数据库。
创建数据库示例
CREATE DATABASE my_library ON PRIMARY( NAME = my_library_data, FILENAME =‘c:\mssql7\data\my_library.mdf’, SIZE = 10 MB, //10 MB的主要数据库文件 MAXSIZE = 15 MB, FILEGROWTH = 20 % )
(2)修改数据库选项
可以在企业管理器中修改数据库属性, 也可以在查询分析器中使用SQL语句来修改 数据库的属性,添加数据库数据文件,改变 其大小等。 (1)用企业管理器修改 (2)用T-SQL语句修改:
用企业管理器修改
用企业管理器修改 数据库zzg1的属性
用SQL语句修改
输入T-SQL语句, 修改数据库zzg1,增 加一个数据文件
第3章关系数据库语言SQL2005
本章重要概念
(1)SQL数据库的体系结构,SQL的组成。 (2)SQL的数据定义:SQL模式、基本表和索引
的创建和撤销。
(3) SQL的数据更新:插入、删除和修改语句。 ( 4 ) SQL 的 数 据 查 询 ; SELECT 语 句 的 句 法 ,
SELECT语句的三种形式及各种限定,基本表的 联接操作,SQL3中的递归查询。 (5)视图的创建和撤销,对视图更新操作的限制。 (6)嵌入式SQL:预处理方式,使用规定,使用 技术,卷游标,动态SQL语句。 (7)触发器和存储过程
REFERENCES 表名(列名[,列名]…)] [,CKECK (条件)])
表的定义格式
缺省值(DEFAULT):指定列的缺省值; NOT NULL:列值不能为空值; UNIQUE:取值唯一的列名; PRIMARY KEY:主关键字(主码)列名; FOREIGN KEY:外部码列名; REFERENCES:引用的外部码的表名和列
进入Enterprise Manager界面后: 1. 执行Action/New Server Group 2. 展开并选择服务器 3. 展开Database 4. 按右键选择Action/New Database
1. 或选择Action/New Database 5. 显示界面如图。