SQL Server数据库技术及应用(第二版)第5章思考习题答案
SQLServer数据库及应用课后习题答案

1、SQL Server 2005的版本有:SQL Server 2005 Enterprise Edition(企业版)、SQL Server 2005 Standard Edition(标准版)、SQL Server 2005 Workgroup Edtition(工作组版)、SQL Server 2005 Developer Edition(开发版)、及SQL Server 2005 Express Edition(简易版)。
2、在Management Studio中,单击工具栏左侧的“新建查询”按钮,即可打开查询分析器,输入SQL语句后,单击工具栏中的“执行”按钮,执行此SQL语句,并将查询后的结果显示在结果窗口中。
3、硬件要求:(1)监视器:SQL Server图形工具需要VGA或更高分辨率,分辨率至少为 1024×768 像素。
(2)处理器:Pentium III 600MHz以上。
(3)内存:SQL Server 2005 Express Edition最小内存为192MB,其他版本最小内存为512MB。
(4)硬盘空间:实际硬盘空间要求取决于系统配置和选择安装的应用程序和功能。
软件要求:(1)网络软件:64 位版本的SQL Server 2005的网络软件要求与32位版本的要求相同。
Windows 2003、Windows XP和Windows 2000都具有内置网络软件。
(2)浏览器:所有SQL Server 2005的安装都需要Microsoft Internet Explorer 6.0 SP1或更高版本,因为Microsoft管理控制台(MMC)和HTML帮助需要它。
(3)Internet信息服务:安装Microsoft SQL Server 2005 Reporting Services (报表服务)需要IIS 5.0以上版本。
(4)2.0:Reporting Services需要 2.0。
SQLServer课后习题参考答案(详解)

SQLServer课后习题参考答案(详解)第一章:1、订单管理系统的功能有哪些?答:订单管理系统的功能主要有客户查询商品信息、客户预订商品并提交订单、销售人员处理客户的订单信息、销售人员管理商品信息、客户信息等。
2、说明ER模型的作用?答:ER模型(实体关系模型)是描述概念世界,建立概念世界的工具,ER方法把管理系统所要描述的问题划分为单个的实体,通过实体间的联系实现有效、自然地模拟现实世界。
3、什么是关系模型?关系的完整性包括哪些内容?答:关系模型就是用二维表格结构来表示实体及实体之间联系的模型,关系模型包括四类完整性:域完整性、实体完整性、参照完整性和用户定义的完整性。
4、按照功能,SQL语言分为哪4部分?答:按照功能,SQL语言分为数据定义语言、查询语言、数据操纵语言、数据控制语言。
5、规范化范式是依据什么来划分的?它与一事一地的原则有什么联系?答:规范化范式根据一个关系满足数据依赖的程度不同,可规范化为第一范式(1NF)、第二范式(2NF)、第三范式(3NF)。
规范化范式遵循一事一地的原则,将描述一个独立事物的属性组成一个关系。
第二章:1、SQL Server 2005有哪些新增特性?答:SQL Server 2005的新特性主要体现在企业数据管理、开发人员生产力、商务智能三个方面。
企业数据管理体现在高可用性、管理工具、安全性和可伸缩性;开发人员生产力体现在CommonLanguage Runtime集成、集成XML、Transact-SQL增强和SQL服务代理;商务智能体现在分析服务、数据转换服务、报表服务和数据挖掘。
2、SQL Server 2005安装的软件和硬件环境是什么?答:SQL Server 2005安装的软件和硬件环境参见教材表2-3、2-4、2-5、2-6。
3、SQL Server 2005有哪些版本?有哪些服务组件?答:SQL Server 2005包括企业版、标准版、工作组版、开发版和简易版五个版本,服务组件主要有SQL Server 数据库引擎、Analysis Services、Reporting Services、Notification Services、Integration Services等。
数据库技术与应用第二版课后答案

数据库技术与应用第二版课后答案【篇一:数据库技术与应用sql习题答案】class=txt>4. 启动查询分析器,在查询分析器中使用transact-sql 语句create database创建studb数据库。
然后通过系统存储过程sp_helpdb查看系统中的数据库信息create database studbsp_helpdb5. 在查询分析器中使用transact-sql语句alter database修改studb数据库的设置,指定数据文件大小为5mb,最大文件大小为20mb,自动递增大小文1mb。
alter database studbmodify file(name=studb,size=5mb,maxsize=20mb,filegrowth=1mb)7. 使用企业管理器将studb数据库的名称更改为student_db。
alter database studbmodify name=student_db8. 使用transact-sql语句drop database删除student_db数据库。
drop database student_db实验3 sql server 数据表的管理5. 使用transact-sql语句create table在studentsdb数据库中创建grade表。
create table grade(学号 char(4),课程编号 char(4),分数 decimal(5))8. 使用transact_sql语句insert into...values向studentsdb数据库的grade表插入以下数据:学号课程编号分数0004 0001 80use studentsdbgoinsert into gradevalues(0004,0001,80)9. 使用transact_sql语句alter table修改curriculum表的“课程编号”列,使之为非空。
数据库技术与应用SQL Server 2008第5章习题参考答案

第5章习题解答1.思考题(1)什么是聚集索引?什么是非聚集索引?它们的区别是什么?答:聚集索引(Clustered)将数据行的键值在数据表内排序并存储对应的数据记录,使得数据表的物理顺序与索引顺序一致。
非聚集索引(Non-clustered)具有完全独立于数据行的结构。
数据存储在一个地方,索引存储在另一个地方。
聚集索引确定表中数据的物理顺序。
非聚集索引中索引的逻辑顺序与磁盘上行的物理存储顺序不同。
(2)一个表中的数据可以按照多种顺序来存储吗?一个表中能创建几个聚集索引?聚集索引一定是唯一索引吗?为什么?答:一个表中的数据只能按照一种顺序来存储,所以一个表中只能创建一个聚集索引。
唯一索引是给所做的索引增加了唯一性的约束,添加,修改索引列中数据时,不允许出现重复值。
聚集索引是唯一的,也可以不是唯一的,就看如何定义。
(3)视图和数据表的区别是什么?视图可以创建索引、创建主健、约束吗?为什么?答:视图和数据表的区别:1)视图是已经编译好的sql语句。
而表不是。
2)视图没有实际的物理记录。
而表有。
3)表是内容,视图是窗口。
4)表只用物理空间而视图不占用物理空间,视图只是逻辑概念的存在,表可以及时对它进行修改,但视图只能有创建的语句来修改。
5)表是内模式,视图是外模式。
6)视图是查看数据表的一种方法,可以查询数据表中某些字段构成的数据,只是一些SQL语句的集合。
从安全的角度说,视图可以不给用户接触数据表,从而不知道表结构。
7)表属于全局模式中的表,是实表;视图属于局部模式的表,是虚表。
8)视图的建立和删除只影响视图本身,不影响对应的基本表。
(4)能不能基于临时表建立视图?由什么语句可建立临时表?在CREA TE VIEW语句中能不能使用INTO关键字?为什么?答:不能基于临时表建立视图。
由SELECT INTO语句可建立临时表,在CREA TE VIEW 语句中不能使用INTO关键字。
(5)视图存储记录吗?对更新视图的操作最终都转化为对什么的更新操作?答:视图的信息存放在系统表中,可以使用查询语句或系统存储过程进行查询。
SQL Server数据库技术及应用(第二版)第5章思考习题答案

思考习题一、选择题1.事务的性质中,关于原子性(atomicity)的描述正确的是()。
A 指数据库的内容不出现矛盾的状态B 若事务正常结束,即使发生故障,更新结果也不会从数据库中消失C 事务中的所有操作要么都执行,要么都不执行D 若多个事务同时进行,与顺序实现的处理结果是一致的2.使用DECLARE申明一局部变量@m,则下列能对@m进行赋值的语句是()。
A @m=100B SET @m=100C SELECT @m=100D DECLARE @m=1003.下列运算符优先级别最高的是()。
A ALLB NOTC AND D OR4.下列函数中用于将字符转换为ASCII码的函数是()。
A CHAR()B ASCII()C NCHAR()D UNICODE()5.可用于返回今天属于哪个月份的T-SQL语句是()。
A SELECT DA TEDIFF(mm,GetDate())B SELECT DA TEPART(month,GetDate())C SELECT DA TEDIFF(n,GetDate())D SELECT DA TENAME(dw,GetDate())6.下列常量中不属于字符串常量的是()。
A ’小明’B ’what’’s this’C ”小强”D ”what’s your name”7.有下述T-SQL语句DECLARE @sub varchar(10)SET @sub=’aaa’SELECT @sub=SUBSTRING(‘HELLO SQL Server’,3,3)PRINT @sub则程序执行后的现实结果为()。
A 程序报错B ’aaa’C ’LLO’D ’LO ’8.下列关于触发器的描述,正确的是()。
A 一个触发器只能定义在一个表中B 一个触发器能定义在多个表中C 一个表上只能有一种类型的触发器D 一个表上可以有多种不同类型的触发器9.下列关于存储过程的描述不正确的是()。
数据库技术与应用VisualFoxPro(第2版)课后习题答案

第1章练习题答案一、选择题二、填空题1、数据定义、数据操纵2、文件系统阶段、数据库系统阶段3、属性、字段、元组、记录4、关键字(候选码)5、域6、属性名、属性到域的映象7、关系、关系8、投影9、选择运算、投影运算10、连接运算、自然连接三、简答题1、答:数据库(DataBase)是被长期存放在计算机内、有组织的、可以表现为多种形式的可共享的数据集合。
数据库管理系统(DataBase Management System,简称DBMS)是计算机系统软件,它的职能是有效地组织和存储数据、获取和管理数据,接受和完成用户提出的访问数据的各种请求。
数据库系统是指拥有数据库技术支持的计算机系统,它可以实现有组织地、动态地存储大量相关数据,提供数据处理和信息资源共享服务。
数据库系统是指在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。
2、答:关系是一张二维表,每个关系有一个关系名。
在计算机中,一个关系可以存储为一个文件。
在Visual FoxPro中,一个关系就是一个表文件。
元组是二维表中水平方向的行,有时也叫做一条记录。
属性是二维表中垂直方向的列,有时也叫做一个字段。
3、答:数据库系统由四部分组成:硬件系统、系统软件、数据库应用系统和各类人员。
4、答:常用的数据模型有层次模型、网状模型和关系模型。
层次模型的特点是:形状象一棵倒立的树,有且仅有一个结点无父结点,这个结点称为根结点,其他结点有且仅有一个父结点。
网状模型的特点是:形状象一张网,允许一个以上的结点无父结点,一个结点可以有多于一个的父结点。
关系模型的特点是:在关系中,数据的逻辑结构是一张二维表。
该表满足每一列中的分量是类型相同的数据;列的顺序可以是任意的;行的顺序可以是任意的;表中的分量是不可再分割的最小数据项,即表中不允许有子表;表中的任意两行不能完全相同。
层次模型对具有一对多层次关系的数据描述非常自然、直观、容易理解;网状模型主要是描述具有多对多关系的数据。
数据库技术与应用第5、6章 习题答案

第5章数据库完整性与安全性1. 什么是数据库的完整性?什么是数据库的安全性?两者之间有什么区别和联系?解:数据库的完整性是指数据库中数据的正确性、有效性和相容性,其目的是防止不符合语义、不正确的数据进入数据库,从而来保证数据库系统能够真实的反映客观现实世界。
数据库安全性是指保护数据库,防止因用户非法使用数据库造成数据泄露、更改或破坏。
数据的完整性和安全性是两个不同的概念,但是有一定的联系:前者是为了防止数据库中存在不符合语义的数据,防止错误信息的输入和输出,即所谓垃圾进垃圾出所造成的无效操作和错误结果。
后者是保护数据库防止恶意的破坏和非法的存取。
也就是说,安全性措施的防范对象是非法用户和非法操作,完整性措施的防范对象是不合语义的数据。
2. 什么是数据库的完整性约束条件?完整性约束条件可以分为哪几类?解:完整性约束条件是指数据库中的数据应该满足的语义约束条件。
一般可以分为六类:静态列级约束、静态元组约束、静态关系约束、动态列级约束、动态元组约束、动态关系约束。
静态列级约束是对一个列的取值域的说明,包括以下几个方面:①数据类型的约束,包括数据的类型、长度、单位、精度等;②对数据格式的约束;③对取值范围或取值集合的约束;④对空值的约束;⑤其他约束。
静态元组约束就是规定组成一个元组的各个列之间的约束关系,静态元组约束只局限在单个元组上。
静态关系约束是在一个关系的各个元组之间或者若干关系之间常常存在各种联系或约束。
常见的静态关系约束有:①实体完整性约束;②参照完整性约束;③函数依赖约束。
动态列级约束是修改列定义或列值时应满足的约束条件,包括下面两方面:①修改列定义时的约束;②修改列值时的约束。
动态元组约束是指修改某个元组的值时需要参照其旧值,并且新旧值之间需要满足某种约束条件。
动态关系约束是加在关系变化前后状态上的限制条件,例如事务一致性、原子性等约束条件。
3. 试述DBMS如何实现完整性控制。
解:为了维护数据库的完整性,DBMS提供了以下三种机制:①完整性约束条件定义完整性约束条件也称为完整性规则,是数据库中的数据必须满足的语义约束条件。
SQL Server数据库技术及应用(第2版) 习题答案

习题答案子项目1安装和体验数据库一、选择题1.C2.C3.D4. A5.D二、填空题1.工作组版、开发人员版、开发版2. 关系型3.控制台命令、“计算机管理”对话框窗口、SQL Server配置管理器。
4.MSSQL Server5.网络协议三、简答题1.(1)数据库管理系统(DBMS):是一种操纵和管理数据库的软件,是用于建立、使用和维护数据库。
它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。
(2)数据库(DB):是由文件管理系统发展起来的,是依照某种数据模型组织起来的数据集合。
这种数据集合具有如下特点:尽可能不重复,以最优方式为某个特定组织的多种应用服务,其数据结构独立于使用它的应用程序,对数据的增、删、改和检索由统一软件进行管理和控制。
(3)数据库系统(DBS):是存储介质、处理对象和管理系统的集合体,通常由软件、数据库和数据管理员组成。
(4)数据库管理员(DBA):负责创建、监控和维护整个数据库,使数据能被任何有权使用的人有效使用。
2.常见数据库管理系统除了Microsoft SQL Server外,还有甲骨文公司的Oracle系统,IBM公司的DB2系统和Informix系统,赛贝斯公司的Sybase ASE系统,微软公司Access系统,以及MySQL公司的MySQL开源数据库系统。
3.需要在本地计算机上注册远程计算机的SQL Server数据库服务器。
成功注册服务器的前提条件:首先确保服务器端的SQL Server数据库服务已经启动,其次在SQL Server 配置管理器中已经启用TCP/IP通讯协议。
子项目2创建教学管理系统数据库与数据表一、选择题1.D2.C3.A4.A5.A6.B7.C8.A9.D 10.D 11.A 12.D二、填空题1.int2.引用(参照)完整性3.输入列的值4.主键5.检查约束、PRIMARYKEYS三、实训操作1、CREATE DATABASE library1ON PRIMARY(NAME = library,FILENAME = 'c:\library\library.mdf',SIZE = 5MB,MAXSIZE = 1000MB)LOG ON(NAME = library_log,FILENAME = 'c:\library\library_log.ldf',MAXSIZE = 5MB,FILEGROWTH = 10%)GO2、USE Library1GOCREATE TABLE Readers(RID INT NOT NULL, --读者编号RName NVARCHAR(50) N OT NULL, --读者姓名RSex CHAR(2) NOT NULL, --读者性别RTypeId INT NOT NULL, --读者类型编号RAddress NVARCHAR(50) NULL, --家庭住址Email NVARCHAR(50) NULL --电子邮件)GOCREATE TABLE ReaderType(RTypeId INT IDENTITY(1,1) NOT NULL, --读者类型编号RType NVARCHAR(30) NOT NULL, --读者类型名称Num TINYINT NOT NULL --可借数量)GOCREATE TABLE Books(BID INT IDENTITY(1,1) NOT NULL, --图书编号Title NVARCHAR(200) NOT NULL, --图书名称Author NVARCHAR(50) NOT NULL, --图书作者PubId INT NOT NULL, --出版社编号PubDate SMALLDATETIME NOT NULL, --出版时间ISBN NVARCHAR(200) NOT NULL, --ISBNPrice MONEY NOT NULL, --单价CategoryId INT NOT NULL --图书种类编号)GOCREATE TABLE BookCategory(CateoryId INT IDENTITY(1,1) NOT NULL, --图书类型编号Name NVARCHAR(20) NOT NULL --图书类型名称)GOCREATE TABLE Publishers(PID INT IDENTITY(1,1) NOT NULL, --出版社编号PName NVARCHAR(50) NULL --出版社名称)GOCREATE TABLE Borrow(RID INT NOT NULL, --读者编号BID INT NOT NULL, --图书编号LendDate DATETIME NOT NULL, --借阅日期ReturnDate DATETIME NULL, --实际归还日期)GOCREATE TABLE Penalty(RID INT NOT NULL, --读者编号BID INT NOT NULL, --图书编号PDate DATETIME NOT NULL, --罚款日期PType INT NOT NULL, --罚款类型Amount MONEY NULL --罚款金额)GO3、--创建各类约束--Reader表的约束--RSex char(2) 只取男、女,默认值为男读者性别ALTER TABLE ReadersADD CONSTRAINT CK_RSex CHECK(RSex='男' OR RSex='女')ALTER TABLE ReadersADD CONSTRAINT DF_RSex DEFAULT '男' FOR RSexALTER TABLE ReadersADD CONSTRAINT DF_Raddress DEFAULT '地址不详' FOR Raddress ALTER TABLE ReadersADD CONSTRAINT CK_Email CHECK(Email LIKE '%@%')ALTER TABLE ReadersADD CONSTRAINT PK_RID PRIMARY KEY (RID)--ReaderType的约束ALTER TABLE ReaderTypeADD CONSTRAINT PK_RTypeId PRIMARY KEY (RTypeId)GOALTER TABLE ReaderTypeADD CONSTRAINT CK_Num CHECK (Num>=0)GO--Books的约束ALTER TABLE BooksADD CONSTRAINT PK_BID PRIMARY KEY (BID)GOALTER TABLE BooksADD CONSTRAINT CK_PubDate CHECK (PubDate<GETDATE())GOALTER TABLE BooksADD CONSTRAINT UQ_ISBN UNIQUE(ISBN)GOALTER TABLE BooksADD CONSTRAINT CK_Price CHECK (Price>0)GO--BookCategory的约束ALTER TABLE BookCategoryADD CONSTRAINT PK_CateoryId PRIMARY KEY (CateoryId)ALTER TABLE PublishersADD CONSTRAINT PK_PID PRIMARY KEY (PID)GO--图书借阅信息表Borrow表中的约束ALTER TABLE BorrowADD CONSTRAINT PK_borrow PRIMARY KEY(RID,BID,LendDate) ALTER TABLE BorrowADD CONSTRAINT DF_LendDate DEFAULT GETDATE() FOR LendDate --图书罚款信息表Penalty 中的约束ALTER TABLE PenaltyADD CONSTRAINT PK_penalty PRIMARY KEY(RID,BID,PDate) ALTER TABLE PenaltyADD CONSTRAINT DF_PDate DEFAULT GETDATE() FOR PDateALTER TABLE PenaltyADD CONSTRAINT CK_Amount CHECK (Amount>0)--创建外键约束ALTER TABLE ReadersADD CONSTRAINT FK_Readers_ReaderType FOREIGN KEY(RTypeId) REFERENCES ReaderType(RTypeId)ALTER TABLE BooksADD CONSTRAINT FK_Books_Publishers FOREIGN KEY(PubId) REFERENCES Publishers(PID)(外键约束以此为例,其他略)4、插入记录此处使用操作方式略。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
思考习题一、选择题1.事务的性质中,关于原子性(atomicity)的描述正确的是()。
A 指数据库的内容不出现矛盾的状态B 若事务正常结束,即使发生故障,更新结果也不会从数据库中消失C 事务中的所有操作要么都执行,要么都不执行D 若多个事务同时进行,与顺序实现的处理结果是一致的2.使用DECLARE申明一局部变量@m,则下列能对@m进行赋值的语句是()。
A @m=100B SET @m=100C SELECT @m=100D DECLARE @m=1003.下列运算符优先级别最高的是()。
A ALLB NOTC AND D OR4.下列函数中用于将字符转换为ASCII码的函数是()。
A CHAR()B ASCII()C NCHAR()D UNICODE()5.可用于返回今天属于哪个月份的T-SQL语句是()。
A SELECT DA TEDIFF(mm,GetDate())B SELECT DA TEPART(month,GetDate())C SELECT DA TEDIFF(n,GetDate())D SELECT DA TENAME(dw,GetDate())6.下列常量中不属于字符串常量的是()。
A ’小明’B ’what’’s this’C ”小强”D ”what’s your name”7.有下述T-SQL语句DECLARE @sub varchar(10)SET @sub=’aaa’SELECT @sub=SUBSTRING(‘HELLO SQL Server’,3,3)PRINT @sub则程序执行后的现实结果为()。
A 程序报错B ’aaa’C ’LLO’D ’LO ’8.下列关于触发器的描述,正确的是()。
A 一个触发器只能定义在一个表中B 一个触发器能定义在多个表中C 一个表上只能有一种类型的触发器D 一个表上可以有多种不同类型的触发器9.下列关于存储过程的描述不正确的是()。
A 存储过程能增强代码的重用性B 存储过程可以提高运行速度C 存储过程可以提高系统安全D 存储过程不能被直接调用10.下列字符串函数中可用于返回子字符串的是()。
A LEFT()B REPLACE()C RIGHT()D SUBSTRING()二、填空题1.T-SQL中的整数类型包括()、()、()、()。
2.T-SQL流程控制语句中CASE语句分为()和()两种。
3.T-SQL中的变量分为()和()两种。
4.使用全局变量()可返回当前服务器的数目。
5.()和()运算符可用于对datetime及smalldatetime类型的值执行算术运算。
6.函数()用于以标准格式返回当前系统的日期和时间。
7.根据常量的类型不同,可分为字符串常量、二进制常量、()、()、()、()。
8.SQL Server中的运算符可以分为算术运算符、()、()、()、()、()一元运算符。
9.SQL Server提供了大量的系统函数,常用的有聚合函数、()、()、()等。
10.结束事务包括()和()。
三、简答题1.简述T-SQL中局部变量和全局变量各自的使用原则。
2.简述运算符的类型和优先顺序。
3.简述常用的流程控制语句的类型和功能。
4.简述在数据库编程中使用存储过程有哪些好处。
5.简述事务中包含的4中重要属性分别是什么。
一、选择题1.事务的性质中,关于原子性(atomicity)的描述正确的是(C )。
A 指数据库的内容不出现矛盾的状态B 若事务正常结束,即使发生故障,更新结果也不会从数据库中消失C 事务中的所有操作要么都执行,要么都不执行D 若多个事务同时进行,与顺序实现的处理结果是一致的2.使用DECLARE申明一局部变量@m,则下列能对@m进行赋值的语句是(BC )。
A @m=100B SET @m=100C SELECT @m=100D DECLARE @m=1003.下列运算符优先级别最高的是(B )。
A ALLB NOTC AND D OR4.下列函数中用于将字符转换为ASCII码的函数是(B )。
A CHAR()B ASCII()C NCHAR()D UNICODE()5.可用于返回今天属于哪个月份的T-SQL语句是(B )。
A SELECT DATEDIFF(mm,GetDate())B SELECT DATEPART(month,GetDate())C SELECT DATEDIFF(n,GetDate())D SELECT DATENAME(dw,GetDate())6.下列常量中不属于字符串常量的是(CD )。
A ’小明’B ’what’’s this’C ”小强”D ”what’s your name”7.有下述T-SQL语句DECLARE @sub varchar(10)SET @sub=’aaa’SELECT @sub=SUBSTRING(‘HELLO SQL Server’,3,3)PRINT @sub则程序执行后的现实结果为( D )。
A 程序报错B ’aaa’C ’LLO’D ’LO ’8.下列关于触发器的描述,正确的是(AD )。
A 一个触发器只能定义在一个表中B 一个触发器能定义在多个表中C 一个表上只能有一种类型的触发器D 一个表上可以有多种不同类型的触发器9.下列关于存储过程的描述不正确的是(D )。
A 存储过程能增强代码的重用性B 存储过程可以提高运行速度C 存储过程可以提高系统安全D 存储过程不能被直接调用10.下列字符串函数中可用于返回子字符串的是(ACD )。
A LEFT()B REPLACE()C RIGHT()D SUBSTRING()二、填空题1.T-SQL中的整数类型包括(int )、(bigint )、(smallint )、(tinyint )。
2.T-SQL流程控制语句中CASE语句分为(CASE )和(搜索式CASE )两种。
3.T-SQL中的变量分为(全局变量)和(局部变量)两种。
4.使用全局变量(@@connections )可返回当前服务器的数目。
5.(+ )和(- )运算符可用于对datetime及smalldatetime类型的值执行算术运算。
6.函数(getdate() )用于以标准格式返回当前系统的日期和时间。
7.根据常量的类型不同,可分为字符串常量、二进制常量、(字符串常量)、(整型常量)、(实型常量)、(日期时间常量)。
8.SQL Server中的运算符可以分为算术运算符、(赋值运算符)、(位运算符)、(比较运算符)、(逻辑运算符)、(字符串串联运算符)一元运算符。
9.SQL Server提供了大量的系统函数,常用的有聚合函数、(时间日期函数)、(字符串函数)、(数学函数)等。
10.结束事务包括(事务的名称)和(事务的状态)。
三、简答题1.简述T-SQL中局部变量和全局变量各自的使用原则。
答:局部变量使用前必须先声明,然后才能使用;全局变量一般由系统定义和维护,用户可以直接使用,一般不自定义全局变量,但用户是可以定义全局变量的。
2.简述运算符的类型和优先顺序。
答:SQL Server 2008 使用下列几类运算符:算术运算符、赋值运算符、位运算符、比较运算符、逻辑运算符、字符串串联运算符、一元运算符。
运算符有下面的优先等级(从高到低):+(正)、-(负)、~(按位NOT)*(乘)、/(除)、%(模)+(加)、(+ 串联)、-(减)=, >, <, >=, <=, <>, !=, !>, !< 比较运算符^(位异或)、&(位与)、|(位或)NOTANDALL、ANY、BETWEEN、IN、LIKE、OR、SOME=(赋值)3.简述常用的流程控制语句的类型和功能。
答:常用的流程控制语句有:BEGIN...END,用来定义语句块,让语句块作为一个整体执行;IF…ELSE。
用来根据条件执行相应的语句或语句序列;WHILE。
用来重复执行语句或语句序列。
4.简述在数据库编程中使用存储过程有哪些好处。
答:模块化程序设计。
只需要创建过程一次并将其存储在数据库中,以后即可在程序中调用该过程任意次。
提高执行速度。
如果某操作需要大量T-SQL代码或需要重复执行,存储过程将比T-SQL批代码的执行要快。
因为存储过程在第一次运行后,就驻存在高速缓存存储器中。
减少网络流量。
一个需要数百行T-SQL代码的操作由一条执行存储过程代码的单独语句就可以实现,而不需要在网络中发送数百行代码。
提高安全性。
对于没有直接授予某些语句操作权限的用户,也可以授予他们执行包含这些语句的存储过程的权限。
5.简述事务中包含的4中重要属性分别是什么。
答:事务的4个重要的属性是:Atomicity(原子性)、Consistency(一致性)、Isolation (隔离性)、Durability(持久性)。
(1)原子性Atomicity事务的原子性指的是,事务中包含的程序作为数据库的逻辑工作单位,它所做的对数据修改操作要么全部执行,要么完全不执行。
这种特性称为原子性。
(2)一致性Consistency事务的一致性指的是在一个事务执行之前和执行之后数据库都必须处于一致性状态。
这种特性称为事务的一致性。
假如数据库的状态满足所有的完整性约束,就说该数据库是一致的。
(3)隔离性Isolation隔离性指并发的事务是相互隔离的。
即一个事务内部的操作及正在操作的数据必须封锁起来,不被其它企图进行修改的事务看到。
(4)持久性Durability持久性意味着当系统或介质发生故障时,确保已提交事务的更新不能丢失。
即一旦一个事务提交,DBMS保证它对数据库中数据的改变应该是永久性的,耐得住任何数据库系统故障。
持久性通过数据库备份和恢复来保证。