思考习题
一、选择题
1.事务的性质中,关于原子性(atomicity)的描述正确的是( )。
A 指数据库的内容不出现矛盾的状态
B 若事务正常结束,即使发生故障,更新结果也不会从数据库中消失
C 事务中的所有操作要么都执行,要么都不执行
D 若多个事务同时进行,与顺序实现的处理结果是一致的
2.使用DECLARE申明一局部变量@m,则下列能对@m进行赋值的语句是( )。
A @m=100 B SET @m=100
C SELECT @m=100 D DECLARE @m=100
3.下列运算符优先级别最高的是( )。
A ALL B NOT C AND D OR
4.下列函数中用于将字符转换为ASCII码的函数是( )。
A CHAR() B ASCII() C NCHAR() D UNICODE()
5.可用于返回今天属于哪个月份的T-SQL语句是( )。
A SELECT DATEDIFF(mm,GetDate())
B SELECT DATEPART(month,GetDate())
C SELECT DATEDIFF(n,GetDate())
D SELECT DATENAME(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 若事务正常结束,即使发生故障,更新结果也不会从数据库中消失
sql语句实现的四种功能 C 事务中的所有操作要么都执行,要么都不执行
D 若多个事务同时进行,与顺序实现的处理结果是一致的
2.使用DECLARE申明一局部变量@m,则下列能对@m进行赋值的语句是( BC )。
A @m=100 B SET @m=100
C SELECT @m=100 D DECLARE @m=100
3.下列运算符优先级别最高的是(B )。
A ALL B NOT C AND D OR
4.下列函数中用于将字符转换为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)
*(乘)、/(除)、%(模)
+(加)、(+ 串联)、-(减)
=, >, <, >=, <=, <>, !=, !>, !< 比较运算符
^(位异或)、&(位与)、|(位或)
NOT
AND
ALL、ANY、BETWEEN、IN、LIKE、OR、SOME
=(赋值)
3.简述常用的流程控制语句的类型和功能。
答:常用的流程控制语句有:END,用来定义语句块,让语句块作为一个整体执行;IF…ELSE。用来根据条件执行相应的语句或语句序列;WHILE。用来重复执行语句或语句序列。
4.简述在数据库编程中使用存储过程有哪些好处。
答:模块化程序设计。只需要创建过程一次并将其存储在数据库中,以后即可在程序中调用该过程任意次。
提高执行速度。如果某操作需要大量T-SQL代码或需要重复执行,存储过程将比T-SQL批代码的执行要快。因为存储过程在第一次运行后,就驻存在高速缓存存储器中。
减少网络流量。一个需要数百行T-SQL代码的操作由一条执行存储过程代码的单独语句就可以实现,而不需要在网络中发送数百行代码。
提高安全性。对于没有直接授予某些语句操作权限的用户,也可以授予他们执行包含这些语句的存储过程的权限。
5.简述事务中包含的4中重要属性分别是什么。
答:事务的4个重要的属性是:Atomicity(原子性)、Consistency(一致性)、Isolation(隔离性)、Durability(持久性)。
(1)原子性 Atomicity
事务的原子性指的是,事务中包含的程序作为数据库的逻辑工作单位,它所做的对数据修改操作要么全部执行,要么完全不执行。这种特性称为原子性。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论