SQL Server 2005 数据查询练习题及答案

SQL Server 2005 数据查询练习题及答案
SQL Server 2005 数据查询练习题及答案

Sql 语句答案:

1. select姓名,单位

from读者

where姓名like'李%'

2. select书名,出版单位

from图书

3. select出版单位,书名,单价

from图书

where出版单位='高等教育出版社'

order by单价desc

4. select书名,出版单位,单价

from图书

where单价between 10.00 and 20.00

order by出版单位,单价asc

5. select书名,作者

from图书

where书名like'计算机%'

6. select借阅.总编号,借书证号

from图书,借阅

where图书.总编号=借阅.总编号and借阅.总编号in('112266','449901')

7.select distinct姓名,单位

from读者inner join借阅

on借阅.借书证号=读者.借书证号

8. select书名,姓名,借书日期

from图书inner join借阅

on图书.总编号=借阅.总编号

join读者

on借阅.借书证号=读者.借书证号

where读者.姓名like'李%'

9. select distinct读者.借书证号,姓名,单位

from借阅inner join读者

on借阅.借书证号=读者.借书证号

where借阅.借书日期>='1997-10-1'

10. select借书证号

from借阅

where总编号in(select总编号

from图书

where书名='FoxPro大全')

11. select姓名,单位,借书日期

from借阅,读者

where借阅.借书证号=读者.借书证号and借书日期=(select借书日期

from借阅,读者

where借阅.借书证号=读者.借书证号and姓名='赵正义')

12. select distinct借书证号,姓名,单位

from读者

where借书证号not in(select借书证号

from借阅

where借书日期>='1997-07-01')

13. select max(单价)最高单价,min(单价)as最低单价,avg(单价)as平均单价from图书

where出版单位='科学出版社'

14. select count(借书证号)

from借阅

where借书证号in(select借书证号

from读者

where单位='信息系')

15. select出版单位,max(单价)最高价格,min(单价)as最低价格,count(*)册数from图书

group by出版单位

16. select单位,count(借阅.借书证号)

from借阅,读者

where借阅.借书证号in(select借书证号

from读者)

group by单位

17. select姓名,单位

from读者

where借书证号in(select借书证号

from借阅

group by借书证号

having count(*)>=2)

18. select单位,count(*)as超过人次

from借阅,读者

where读者.借书证号=借阅.借书证号

group by单位

having count(*)>=2

19. select出版单位,count(*)册数,sum(单价)总价

from图书

group by出版单位

20. select姓名,单位,职称

from读者

where单位='经济系'and not exists(select*

from读者,借阅

where读者.借书证号=借阅.借书证号and单位='经济系')

SQL Server 2005 数据查询练习题及答案

Sql 语句答案: 1. select姓名,单位 from读者 where姓名like'李%' 2. select书名,出版单位 from图书 3. select出版单位,书名,单价 from图书 where出版单位='高等教育出版社' order by单价desc 4. select书名,出版单位,单价 from图书 where单价between 10.00 and 20.00 order by出版单位,单价asc 5. select书名,作者 from图书 where书名like'计算机%' 6. select借阅.总编号,借书证号 from图书,借阅 where图书.总编号=借阅.总编号and借阅.总编号in('112266','449901') 7.select distinct姓名,单位 from读者inner join借阅 on借阅.借书证号=读者.借书证号 8. select书名,姓名,借书日期 from图书inner join借阅 on图书.总编号=借阅.总编号 join读者 on借阅.借书证号=读者.借书证号 where读者.姓名like'李%' 9. select distinct读者.借书证号,姓名,单位 from借阅inner join读者 on借阅.借书证号=读者.借书证号 where借阅.借书日期>='1997-10-1' 10. select借书证号

from借阅 where总编号in(select总编号 from图书 where书名='FoxPro大全') 11. select姓名,单位,借书日期 from借阅,读者 where借阅.借书证号=读者.借书证号and借书日期=(select借书日期 from借阅,读者 where借阅.借书证号=读者.借书证号and姓名='赵正义') 12. select distinct借书证号,姓名,单位 from读者 where借书证号not in(select借书证号 from借阅 where借书日期>='1997-07-01') 13. select max(单价)最高单价,min(单价)as最低单价,avg(单价)as平均单价from图书 where出版单位='科学出版社' 14. select count(借书证号) from借阅 where借书证号in(select借书证号 from读者 where单位='信息系') 15. select出版单位,max(单价)最高价格,min(单价)as最低价格,count(*)册数from图书 group by出版单位 16. select单位,count(借阅.借书证号) from借阅,读者 where借阅.借书证号in(select借书证号 from读者) group by单位 17. select姓名,单位 from读者 where借书证号in(select借书证号 from借阅 group by借书证号 having count(*)>=2)

SQLServer的简介及发展历程

S Q L S e r v e r的简介及发展历程SQL简介 SYSTEMR开发的一种查询语言,它的前身是SQUARE语言。SQL语言结构简洁,功能强大,简单易学,所以自从IBM 语言作为查询语言。 织,负责开发美国的商务和通讯标准。ANSI同时也是ISO和InternationalElectrotechnicalCommission(IEC)的 ANSI随之发布的相应标准是ANSISQL-92。ANSISQL-92有时被称为ANSISQL。尽管不同的关系数据库使用的SQL版本有一些差异,但大多数都遵循ANSISQL标准。SQLServer使用ANSISQL-92的扩展集,称为T-SQL,其遵循ANSI 制定的SQL-92标准。 SQL发展历史 1970:E.J.Codd发表了关系数据库理论(relationaldatabasetheory); 1974-79:IBM以Codd的理论为基础开发了“Sequel”,并重命名为"SQL"; 1979:Oracle发布了商业版SQL 1981-84:出现了其他商业版本,分别来自IBM(DB2),DataGeneral(DG/SQL),RelationalTechnology(INGRES); SQL/86:ANSI跟ISO的第一个标准; SQL/89:增加了引用完整性(referentialintegrity); SQL/92(akaSQL2):被数据库管理系统(DBMS)生产商广发接受; 包括oids; SQL/2003:包含了XML相关内容,自动生成列值(columnvalues); 2005-09-30:“Dataisthenextgenerationinside...SQListhenewHTML”!TimO'eilly提出了Web2.0理念,称数据将是核心,SQL将成为“新的HTML"; SQL/2006:定义了SQL与XML(包含XQuery)的关联应用; 2006:Sun公司将以SQL基础的数据库管理系统嵌入JavaV6 2007:SQLServer2008(Katmi)在过去的SQL2005基础上增强了它的安全性,主要在:简单的数据加密,外键管理,增强了审查,改进了数据库镜像,加强了可支持性。 SQLServer的基本信息 SQLServer是一个关系数据库管理系统。它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的,于1988年推出了第一个OS/2版本。在WindowsNT推出后,Microsoft与Sybase在SQLServer的开发上就分道扬镳了,Microsoft将SQLServer移植到WindowsNT系统上,专注于开发推广SQLServer的WindowsNT版本。Sybase则较专注于SQLServer在UNIX?操作系统上的应用。数据库引擎是SQLServer系统的核心服务,负责完成数据的存储、处理和安全管理。

SQLServer数据库试题九及答案

SQL Server数据库试题九及答案 一、选择题(每题2分,共30分) 1、下面不属于数据定义功能的SQL语句是:() A.CREAT TABLE B.CREAT CURSOR C.UPDA TE D.ALTER TABLE 2、SQL数据库中的视图与下列哪项是对应的()。 A.关系模式 B.存储模式 C.子模式 D.以上都不是 3、下列选项中不是数据库复制类型的是()。 A.快照复制 B.差异复制 C.事务复制 D.合并复制 4、下列说法错误的是: ()。 A.一个基本表可以跨一个或多个存储文件 B. 一个存储文件可以跨一个或多个基本表 C.每个存储文件与外部存储器上一个物理文件对应 D.每个基本表与外部存储器上一个物理文件对应 5.显示包含警告信息或其他信息的消息框,应该使用的操作是()。 A.Echo B.Message C.Warn D.MsgBox 6、在SQL Server 2000中,索引的顺序和数据表的物理顺序相同的索引是()。 A.聚集索引 B.非聚集索引 C.主键索引 D.唯一索引 7. SQL Server的字符型系统数据类型主要包括()。 A. Int、money、char B. char、varchar、text C. datetime、binary、int D. char、varchar、int 8、以下选项中哪一项不是访问数据库系统的接口()。 A.ODBC B.OLE DB C.API D.ADO 9、在SELECT语句的WHERE子句的条件表达式中,可以匹配0个到多个字符的通配符是() A.* B.% C.- D.? 10、SELECT语句中与HA VING子句同时使用的是()子句。 A.ORDER BY B.WHERE C.GROUP BY D.无需配合 11~15题使用如下数据: 当前盘当前目录下有数据库db_stock,其中有表stock的内容是: 股票代码股票名称单价交易所 600600 青岛啤酒7.48 上海 600601 方正科技15.20 上海 600602 广电电子10.40 上海 600603 兴业房产12.76 上海 600604 二纺机9.96 上海 600605 轻工机械14.59 上海 000001 深发展7.48 深圳 000002 深万科12.50 深圳 11、有如下SQL语句 create view stock_view as select * from stock where 交易所=”深圳” 执行该语句后产生的视图包含的记录个数是() A.1 B.2 C.3 D.4 12、有如下SQL语句

SQL_server_2005练习题,有答案

对以下题目请选择正确答案(每道题目有一个或多个正确的答案)。针对每一道题目,所有答案都选对,则该题得分,否则不得分。 1. 数据库设计的最终目标不包括()。(选择两项)BD A. 高效 B. 满足范式要求 C. 安全 D. 表现设计者的技术实力 E. 易用 F. 便于将来扩展功能和容量 2. 有关数据冗余说法错误的是()。(选择一项)C A. 数据库中,数据存在副本的现象,就是数据冗余。 B. 通过分类存储,可以有效减少数据冗余,但是会增加数据查找的复杂性。 C. 在数据库设计阶段,一定要尽最大可能避免数据冗余,最好做到无数据冗余。 D. 数据冗余通常是由于数据库设计引起的。 3. 用于表示数据库实体之间的关系图是()。A A. 实体关系图 B. 数据模型图 C. 实体分类图 D. 以上都不是 4. 假定有一个用户表,表中包含字段:userid (int)、username (varchar)、password(varchar)等,该表需要设置主键,以下说法正确的是()。(选择两项)AB A. 如果不能有同时重复的username和password,那么username和password可以组合在一起作为主键。 B. 此表设计主键时,根据选择主键的最小性原则,最好采用userid作为主键。 C. 此表设计主键时,根据选择主键的最小性原则,最好采用username和password作为组合键。 D. 如果采用userid作为主键,那么在userid列输入的数值,允许为空。 5. 语句alter table userinfo add constraint uq_userid unique(userid)执行成功后,为userinfo表的()字段添加了()约束。B A. userid 主键 B. userid 唯一 C. uq_userid 外键 D. uq_userid 检查 6. 运行如下T-SQL,结果返回包含()的记录集。A create table scores ( scoreid int identity(1,2), score numeric(4,2) not null, courseid int ) insert int scores values(90.5,null); insert into scores values(78.234,2);

sqlserver2005分割字符串,循环输出示例

create function f_splitstr(@source varchar(500),@split varchar(5)) returns @temp table(tid varchar(50)) as begin declare @ch as varchar(50) set @source=@source+@split while(@source<>'') begin set @ch=left(@source,charindex(',',@source,1)-1) insert @temp values(@ch) set @source=stuff(@source,1,charindex(',',@source,1),'') end return end --select tid from dbo.f_splitstr('xxxxxxx,ttttt,yyyyyy,ererer',',') --select getdate() declare @i int,@countNum int, @para varchar(50) declare tid_cursor CURSOR for select tid from dbo.f_splitstr('xxxxxxx,ttttt,yyyyyy,ererer',',') open tid_cursor FETCH NEXT FROM tid_cursor into @para WHILE@@FETCH_STATUS= 0 BEGIN print @para FETCH NEXT FROM tid_cursor into @para END; CLOSE tid_cursor DEALLOCATE tid_cursor GO

SQLServer选择题含答案去原题

第一套选择题 1.下列说法错误的是()。 A.内嵌表值函数没有函数主体,返回的表是单个SELECT语句的结果集B.多语句表值函数的调用与内嵌表值函数的调用方法相同 C.多语句表值函数的功能可以用标量函数来实现 D.在内嵌表值函数的定义中,不使用BEGIN…END块定义函数主体2.以下哪个事件不能激活DML触发器的执行()。 A.SELECT B. UPDATE C. INSERT D. DELETE 3.以下哪个数据库实例不属于系统数据库()。 A.master B.model C.msdb D.temp 4.执行以下语句: DECLARE @n int Set @n=3 WHILE @n<5 Begin IF @n=4 Print ltrim(@n)+‘的平方数为’+ltrim(@n*@n) Set @n=@n+1 End 执行完成后循环次数为()。

A.0次B.1次 C.2次D.死循环 5.利用游标来操纵数据时,所用的FOR UPDATE子句充分利用了事务的哪个特性()。 A.原子性B.一致性 C.永久性D.隔离性 6.关于触发器的描述,下列说法正确的是()。 A.触发器是在数据修改前被触发,约束是在数据修改后被触发 B.触发器是一个能自动执行的特殊的存储过程 C.触发器作为一个独立的对象存在,与数据库中其他对象无关D.inserted表和deleted表是数据库中的物理表 7.关于服务器角色与数据库角色,说法正确的是()。 A.只能将一个登录名添加为某个固定服务器角色的成员 B.只能将一个登录名添加为某个固定数据库角色的成员 C.sysadmin是固定数据库角色 D.db_owner是固定服务器角色 8.关于创建永久备份设备,下列说法错误的是()。 A.执行系统存储过程sp_addumpdevice创建永久备份设备 B.执行系统存储过程sp_dropdevice删除永久备份设备 C.若被删除的“命名备份设备”的类型为磁盘,那么必须指定DELFILE选项D.只须指定该命名备份设备的物理名,无须指定该命名备份设备的逻辑名9.能够将‘java’课的学分赋值给变量的语句是哪一个()。

连接SQL server2005数据库端1433端口的正确方法

连接SQL server2005数据库端1433端口的正确方法 SQL server 2011-02-20 20:49:49 阅读14 评论0 字号:大中小订阅 安装完程序后,连接端口1433前,要做的几件事情和注意事项总结一下。 步骤: 1.关闭数据库引擎,关闭数据库引擎有三种方法: (1)开始->程序->Microsoft SQL Server 2005->配置工具->SQL Server 2005外围应用配置器,在打开的界面单击"服务的连接的外围应用配置器",在打开的界面中找到Database Engine,单击"服务",在右侧查看是否已启动,如果已启动可单击“停止”按钮,即可关闭数据库引擎。 (2)开始->程序->Microsoft SQL Server 2005->配置工具->SQL Server Configuration Manager,选中SQL Server 2005服务中SQL Server(MSSQLSERVER) ,并选中右击,点击停止,即可关闭数据库引擎。 (3) 开始->程序->Microsoft SQL Server 2005-> SQL Server Management Studio,在弹出的连接数 据库引擎对话框中点击“连接”按钮,然后选中服务器名称,右击“停止”按钮,即可关闭数据库引擎。 补充注意点: 有时候在启动数据库引擎的时候可能会出现错误,不能启动,这时就要查看"SQL Server 2005配置管理器"中的SQL Server 2005网络配置->MSSQLSERVER协议中的VIA是否已启用,如果已启用,则把它禁 止.然后再执行上述一种方式操作就可以了. 2.配置服务器端和客户端的TCP/IP协议: 配置工具->SQL Server Configuration Manager->MSSQLSERVER的协议 看看TCP/IP协议是否启动,如果启动,右键菜单点"属性" ,在分页菜单中选"IP地址",把"IP1"和"IP2"中 "TCP端口"为1433,"已启用"改为"是" 配置工具->SQL Server Configuration Manager->SQL Native Client 配置->客户端协议->TCP/IP 选择TCP/IP右键菜单中"属性",确认"默认端口"是1433,"已启用"为"是" 3.开启数据库引擎,方法参考步骤1中的(1)、(2)两点。 4.连接端口1433 开始–>输入cmd –>回车–>telnet localhost 433->回车 出现黑屏,表示本机连接端口1433成功 前几次,连接端口1433失败的原因主要是在配置服务器端和客户端的TCP/IP协议前,没有先关数据库引擎,而是配置完服务器端和客户端的TCP/IP协议后,再关数据库引擎。正确的顺序是:(1)关数据库引擎,(2)配置服务器端和客户端的TCP/IP协议,(3)启动数据库引擎,(4)连接端口1433。

SQLServer数据库期末复习试题试卷及答案

现有关系数据库如下: 数据库名:教学数据库(Teacher) 教师信息表(教师编号,姓名,性别,民族,职称,身份证号) 课程信息表(课程号,课程名,标准课时数) 任课信息表(教师编号,课程号,实际课时数) 一、用SQL语言实现下列功能 1. 创建数据库。 要求:数据库名为 Teacher,主数据文件名为 Teacher_data.MDF,存放在目录下,初始值大小为2MB增长方式为按照10%的比例增长;日志文件名为Teacher_log.LDF,存放在目录下,初始值大小为 1MB增长方式为按照1MB的增量增长。 2. 创建教师信息表Teacherinfo,数据表的各字段属性如下表所示: 列名数据类型长度属性描述 Teacher_Id char 6 主键教师编号 Teacher_Name n varchar 8 不允许空姓名 Sex n char 2 检查(男/女)性别 Birth_Place n varchar 20 默认值(汉族)民族 Zhiche ng n varchar 20 不允许空职称 H Id char 16 唯一身份证号 3.创建课程信息表Course info,数据表的各字段属性如下表所示: 列名数据类型长度属性描述 Course_ld char 5 主键】田千口i=r. 课程 号 Course_Name n varchar 20 不允许空课程名 B Hours Int 检查(0~200) 标准课时数 4.创建任课信息表TCinfo,数据表的各字段属性如下表所示: 列名数据类型长度属性描述 Id int 自动编号 Teacher_Id char 6 外键教师编号 Course_Id char 5 外键】田千口 i=r. 课程号S Hours Int 实际课时数 5. 将下列课程信息添加到课程表中: 课号课程名称课时数 30001 SQL Server 数据库 90 30002 数据结构60 30003 VB 程序设计72 修改课号为30003的课程名称:Visual Basic 程序设计。

sqlserver习题及答案

S Q L S e r v e r习题及答 案 -CAL-FENGHAI-(2020YEAR-YICAI)_JINGBIAN

1. 有个用户的计算机不能连接到中心机房的SQL Server 2000上。你在调试过程中发现这个用户的计算机的网络功能是正常的,而且其他用户都能正常地连接到SQL Server 2000。下面的哪些工具有助于你诊断和解决该问题(多选)A. Enterprise Manager B. Server Network Utility C. Profiler D. Query Analyzer E. Client Network Utility 答:B和E 2. 你在SQL Server 2000创建了酒店管理系统的数据库HotelDB,并创建了表CustInfo。当下面的哪些数据库被删除的情况下,仍能正确地执行“SELECT * FROM CustInfo A. Model B. Tempdb C. Msdb D. Master E. Pubs 答:A、C、E 3. 你正在使用SQL Server 2000开发银行交易系统,为了保证商业数据在网络传输(用TCP/IP协议)时不会被窃取,你在SQL Server 2000中启用了网络加密功能。请问该功能在哪一层被实现? A. TCP/IP协议软件 B.超级套接字层 C.开放式数据服务 D.关系引擎 E.存储引擎 答:B 4. 你正在使用SQL Server 2000开发超市收银系统。在客户端编写软件时使用SQL语句“SELECT * FROM Products”来查询商品的信息,但是不小心把Products输入成Product。请问该错误在哪一层被发现? A.客户端的数据库API B.客户端的NET-LIBRARY C.服务器端的开放式数据服务 D.服务器端的关系引擎 E.服务器端的存储引擎

SQL Server 2005数据库引擎启动服务器的方法

SQL Server 2005 不允许远程连接解决方法 做课程设计时,很多学生都遇到这个问题。把解决方法写在这儿,供参考。 刚刚安装的数据库系统,按照默认安装的话,很可能在进行远程连接时报错,通常是错误:"在连接到SQL Server 2005 时,在默认的设置下SQL Server 不允许进行远程连接可能会导致此失败。(provider: 命名管道提供程序, error: 40 - 无法打开到SQL Server 的连接) "搜MSDN,上面有一片机器翻译的文章,是在让人难以明白,现在总结如下:明白了SQL Server是个网络数据库就可迎刃而解了,简单的分为下面的集中情况。 1. 数据库引擎没有启动。 有两种启动方式: (1)开始->程序->Microsoft SQL Server 2005->SQL Server 2005外围应用配置器,在打开的界面单击"服务的连接的外围应用配置器",在打开的界面中找到Database Engine,单击"服务",在右侧查看是否已启动,如果没有启动可单击"启动",并确保"启动类型"为自动,不要为手动,否则下次开机时又要手动启动; (2)可打开:开始->程序->Microsoft SQL Server 2005->配置工具->SQL Server Configuration Manager,选中SQL Server 2005服务中SQL Server(MSSQLSERVER) ,并单击工具栏中的"启动服务"按钮把服务状态改为启动; 使用上面两种方式时,有时候在启动的时候可能会出现错误,不能启动,这时就要查看"SQL Server 2005配置管理器"中的SQL Server 2005网络配置->MSSQLSERVER协议中的VIA是否已启用,如果已启用,则把它禁止.然后再执行上述一种方式操作就可以了. 2. 是否已经允许远程连接。 这个部分可以简单的分为4个方面,分别是在SQL Server上启用远程连接、启用SQL Server 浏览服务、在Windows 防火墙中为SQL Server 2005 创建例外和在Windows 防火墙中为“SQLBrowser”创建例外。下面是几个具体的操作方式,摘自MSDN,个人觉得文章的黑体部分应当特别的一起我们的注意。 在SQLServer 实例上启用远程连接 1.指向“开始->程序->Microsoft SQL Server 2005->配置工具->SQL Server 外围应用配置器” 2.在“SQL Server 2005 外围应用配置器”页, 单击“服务和连接的外围应用配置器” 3.然后单击展开“数据库引擎”,选中“远程连接”,在右边选中“本地连接和远程连接”, 再选择要使用的协议,( 这个地方应当启用TCP/IP 和命名管道服务!)单击“应用”,您会看到下消息:“直到重新启动数据库引擎服务后,对连接设置所做的更改才会生效。”,单击“确定”按钮返回 4.展开“数据库引擎”,选中“服务”,在右边单击“停止”,等到MSSQLSERVER 服务停止, 然后单击“启动”,重新启动MSSQLSERVER 服务。(更改其它选项后,一定要重启MSSQLSERVER 服务,才能将更改应用!!) 启用SQLServer 浏览器服务

sql查询练习题含答案

--(1)查询20号部门的所有员工信息。 select * from emp e where e.deptno=20; --(2)查询奖金(COMM)高于工资(SAL)的员工信息。 select * from emp where comm>sal; --(3)查询奖金高于工资的20%的员工信息。 select * from emp where comm>sal*0.2; --(4)查询10号部门中工种为MANAGER和20号部门中工种为CLERK的员工的信息。select * from emp e where (e.deptno=10 and e.job='MANAGER') or (e.deptno=20 and e.job='CLERK') --(5)查询所有工种不是MANAGER和CLERK, --且工资大于或等于2000的员工的详细信息。 select * from emp where job not in('MANAGER','CLERK') and sal>=2000; --(6)查询有奖金的员工的不同工种。 select * from emp where comm is not null; --(7)查询所有员工工资和奖金的和。 select (e.sal+nvl(https://www.360docs.net/doc/0e12923245.html,m,0)) from emp e; --(8)查询没有奖金或奖金低于100的员工信息。 select * from emp where comm is null or comm<100; --(9)查询员工工龄大于或等于10年的员工信息。 select * from emp where (sysdate-hiredate)/365>=10; --(10)查询员工信息,要求以首字母大写的方式显示所有员工的姓名。 select initcap(ename) from emp; select upper(substr(ename,1,1))||lower(substr(ename,2)) from emp; --(11)显示所有员工的姓名、入职的年份和月份,按入职日期所在的月份排序, --若月份相同则按入职的年份排序。 select ename,to_char(hiredate,'yyyy') year,to_char(hiredate,'MM') month from emp order by month,year; --(12)查询在2月份入职的所有员工信息。 select * from emp where to_char(hiredate,'MM')='02' --(13)查询所有员工入职以来的工作期限,用“**年**月**日”的形式表示。 select e.ename,floor((sysdate-e.hiredate)/365)||'年' ||floor(mod((sysdate-e.hiredate),365)/30)||'月' ||floor(mod(mod((sysdate-e.hiredate),365),30))||'日' from emp e; --(14)查询从事同一种工作但不属于同一部门的员工信息。

数据库技术(SQLServer)习题与参考答案

数据库技术(SQLServer)习题与参考答案 第一章: 1、SQL Server 2005有哪些新增特性? 答:SQL Server 2005的新特性主要体现在企业数据管理、开发人员生产力、商务智能三个方面。企业数据管理体现在高可用性、管理工具、安全性与可伸缩性;开发人员生产力体现在Common Language Runtime集成、集成XML、Transact-SQL增强与SQL服务代理;商务智能体现在分析服务、数据转换服务、报表服务与数据挖掘。 2、SQL Server 2005安装的软件与硬件环境就是什么? 答:SQL Server 2005安装的软件与硬件环境参见教材6。 3、SQL Server 2005有哪些版本?有哪些服务组件? 答:SQL Server 2005包括企业版、标准版、工作组版、开发版与简易版五个版本,服务组件主要有SQL Server 数据库引擎、Analysis Services、Reporting Services、Notification Services、Integration Services等。 4、什么就是实例?经常提到的SQL Server 2005服务器与服务器实例就是否具有相同的含义? 答:实例就就是SQL服务器引擎,每个SQL Server数据库引擎实例各有一套不为其她实例共享的系统及用户数据库。一个SQL Server服务器就就是一个实例,一台计算机上,可以安装多个SQL SERVER,每个SQL SERVER就可以理解为就是一个实例。 5、默认实例与命名实例有何差别?在安装与使用上有何不同? 答:实例又分为“默认实例”与“命名实例”,如果在一台计算机上安装第一个SQL SERVER 2005命名设置保持默认的话,那这个实例就就是默认实例。一台计算机上最多只有一个默认实例,也可以没有默认实例,默认实例名与计算机名相同。除默认实例外,所有数据库引擎实例都由安装该实例的过程中指定的实例名标识。 6、SQL Server 2005的安全性验证分为哪两个阶段? 答:第1个阶段就是身份验证,验证用户就是否具有“连接权”;第2个阶段就是数据库的访问权,验证连接到服务器实例的用户,即已登录到服务器实例的用户,就是否具有“访问权”。 7、SQL Server 2005有哪些主要的实用工具?每个工具都有什么用途? 答:SQL Server Management Studio,就是Microsoft SQL Server 2005中的新组件,这就是一个用于访问、配置、管理与开发SQL Server的所有组件的集成环境,就是SQL Server 2005中最重要的管理工具。SQL Server Configuration Manager,用来管理SQL Server 2005所

正确配置SQL Server 2005数据库服务器

正确安装SQL Server 2005之后。 1.打开“SQL Server 外围应用配置器”。 2.点击“服务和连接的外围应用配置器”,打开服务和连接的外围应用配置器 对话框,展开“MSSQLSERVER”下的“Database Engine”,然后点击“远程连接”,则右侧设置“本地连接和远程连接”下面的“同时使用TCP/IP和named pipes”项。然后应用确定。 3.设置例外SQL Server端口。在“控制面板”中打开“Windows防火墙”,选 择“例外选项卡”。点击添加端口,给个名称,端口SQL默认的是1433(你

一般不要改动),当然你也可以在“SQL Server Configuration Manager”中的网络配置中修改。 4、以Windows身份进入SQL Server Management Studio,展开“安全性”->“登录名”,右键新建登录名,填入登录名,在“常规”中,选择SQL Server身份验证,并填入密码。在“用户映射中”,为用户在相应的数据库中设置对应的权限,另外在“状态”中,将登录设置“启用”。这样便新建了一个用于网络登录SQL服务器的用户账号。

5、在SQL Server Management Studio中,右键点击服务器,选择属性弹出“服务器属性”对话框,点击左侧的“安全性”,在“服务器身份验证”项中选择“SQL Server 和Windows 身份 验证模式”然后点击确定。

6、在SQL Server Configuration Manager中,重启“SQL Server(MSSQLSERVER)”服务。 7、在SQL Server Management Studio,可以使用服务器的IP地址和网络用户登录。另外,如果更改了SQL Server的端口,则在此处的“服务器名称”中填入IP后,用逗号隔开加端口号,如:222.195.11.219,418。

SQL_server考前复习试题4答案

一、单项选择题(每小题1分,共10分) 1.数据库应用系统是由数据库、数据库管理系统(及其开发工具)、应用系统、(d )和用户构成。 A.DBMS B.DB C.DBS D.DBA 2.数据库管理系统的英文缩写是(a )。 A.DBMS B.DBS C.DBA D.DB 3.在关系运算中,选取符合条件的元组是( d )运算。 A.除法B.投影 C.连接D.选择 4.数据库设计中的逻辑结构设计的任务是把( d )阶段产生的概念数据库模式变换为逻辑结构的数据库模式。 A.需求分析B.物理设计 C.逻辑结构设计D.概念结构设计 5.一个规范化的关系至少应当满足( c )的要求。 A.一范式B.二范式 C.三范式D.四范式 6.在实际数据库设计中,“学号”通常作为(c)存在。 A.数据结构B.数据存储 C.数据项目D.处理过程 7.SQL Server 2000中删除表中记录的命令是( a )。 A.DELETE B.SELECT C.UPDATE D.DROP 8.运行命令SELECT ASCII(‘Alklk’)的结果是( d )。 A.48 B.32 C.90 D.65 9.在SQL中,建立视图用的命令是( c )。 SCHEMA TABLE VIEW INDEX 10.在MS SQL Server中,用来显示数据库信息的系统存储过程是( d )。 A. sp_dbhelp B. sp_db C. sp_help D. sp_helpdb 二、判断题(每空1分,共10分) 1.连接、选择和投影三种关系运算具有相同的结果。n 2.数据的安全性主要防范的对象是合法用户。n 3. 数据库设计前只需选择数据库分析设计人员。n 4. 恢复是利用冗余数据来重建数据库。y 5.定义外键级级联是为了保证相关表之间数据的一致性吗y 6.创建唯一性索引的列可以有一些重复的值n 7.存储过程的输出结果可以传递给一个变量。y 8.视图具有与表相同的功能,在视图上也可以创建触发器。n 9.能在游标中删除数据记录。y 10.SQL Server 2000不具有数据的导入与导出功能。n

熟悉SQLserver2005系统

西北师范大学计算机科学与工程学院学生实验报告 学号201271040109 专业软件工程班级软件工程1班姓名郭宏乐 课程类型 课程名称熟悉SQLserver2005系 统 实验名称熟悉SQLserver2005系统 实验目的:1:熟悉SQLserver2005系统. 2:学会安装SQLserver2005系统。 3学会运用SQLserver2005系统。 实验内容: 1实验步骤: (1)SQLserver2005安装: 安装过SQL Server的人可能知道,它的有些服务要依赖于IIS,所以为了保证数据库的顺利安装,先启用IIS服务吧!Win7比XP好的一点是:启用IIS功能无需借助系统安装盘了,只要在控制面板里启用即可,如图: step1

step2 第三步需要注意的是,选中红框中的复选项,分别为“Internet Information Services 可承载的Web 核心”、“Web 管理工具”和“万维网服务”,这里我不确定“Web 管理工具”是否需要,因为我选中它们的父节点“Internet 信息服务”后选中了它的一些子项,多选总比少选全面,需要将它们的子项全部选中才显示为“√”,否则显示为“■”,记住,一定要显示为“√”才行,效果就和step3一样就可以了!点击确定后会出现线面的框框

如果我们不启用IIS功能,在后续安装SQL Server时会遇见如图画面 到此,IIS功能就算启用完成了,下面开始安装SQL Server 安装文件解压后是一个ISO的镜像,其实是一个DVD文件,将两张光盘合并到一起了,所以你的电脑需要安装虚拟光驱,虚拟光驱不会用请先百度一下,我就不在这里赘述了。 首先启动虚拟光驱软件,把SQL Server的镜像加载进来,如图

VC++环境下连接SQL_Server数据库方法-实验六

VC++环境下连接SQL Server数据库方法指导 实验类型:设计型 一、实验环境 1.Windows XP操作系统; 2.VC++6.0开发环境; 3.SQL server 2000数据库管理系统。 二、实验内容和要求 利用VC开发应用程序,要求能够通过界面完成对数据库中数据的查询、插入、删除以及修改。 三、实验原理 VC访问SQL Server数据库,常用的方法有两种:通过ODBC连接和通过ADO连接。下面分别介绍一下。 采用ODBC方式要求先创建ODBC数据源,应用程序通过数据源与数据库连接;并且在创建应用程序时,只能是基于单文档或多文档,而无法直接创建基于对话框的应用程序。 采用ADO方式无需创建数据源,应用程序可通过ADO直接与数据库连接;ADO方式可以创建基于对话框的应用程序。 两种方式都要在应用程序中添加代码以完成相应的初始化功能。 四、实验步骤 下面通过两个例子分别介绍基于ODBC方式和基于ADO方式的实验步骤。 1 基于ODBC方式的实验步骤 (1)在SQL Server2000中创建数据库student,该数据库中有学生表s用来存放学生信息。 s表的创建方法在此不详述。 (2)创建ODBC数据源 “开始”--〉“设置”--〉“控制面板”—〉“管理工具”—〉“数据源(ODBC)”,打开 之后出现如图1所示窗口。

图1 点击“添加”按钮,出现图2。 图2 选择SQL Server,点击“完成”,出现图3。 图3 名称中填写所创建的数据源的名称,本例中为student,描述可以不填。因为SQL Server 的服务器和客户端均安装在本地计算机上,所以服务器为(local)。如果本地计算机上只安装了客户端,服务器安装在另外的机器上,服务器为另一台机器的名称。 点击“下一步”,出现图4。

sql语句练习题及答案

一在数据库 school 中建立student , sc, course 表。 学生表、课程表、选课表属于数据库School ,其各自的数据结构如下:学生Student (Sno,Sname,Ssex,Sage,Sdept) 课程表course(Cno,Cname,Cpno,Ccredit) 学生选课SC(Sno,Cno,Grade) 二设定主码 1 Student表的主码:sno 2 Course表的主码:cno 3 Sc表的主码:sno,cno 1写出使用 Create Table 语句创建表 student , sc, course 的SQL语句2 3 删除student表中的元组 4在数据库school中删除关系student 5在student表添加属性sbirthdate 类型datetime

Delete 1 删除所有JSJ 系的男生delete from Student where Sdept=’JSJ’ and Ssex=’男’; 2 删除“数据库原理”的课的选课纪录 delete from SC where Cno in (select Cno fromCourse where Cname=’数据库原理’); Update 1 修改0001 学生的系科为: JSJ 2 把陈小明的年龄加1岁,性别改为女。 2 修改李文庆的1001课程的成绩为9 3 分 3 把“数据库原理”课的成绩减去1分 Select 查询语句 一单表 1查询年龄在19至21岁之间的女生的学号,姓名,年龄,按年龄从大到小排列。 2查询姓名中第2个字为“明”字的学生学号、性别。 3查询 1001课程没有成绩的学生学号、课程号 4查询JSJ 、SX、WL 系的年龄大于25岁的学生学号,姓名,结果按系排列 5按10分制查询学生的sno,cno,10分制成绩 (1-10分为1 ,11-20分为2 ,30-39分为3,。。。90-100为10) 6查询 student 表中的学生共分布在那几个系中。(distinct) 7查询0001号学生1001,1002课程的成绩。 二统计 1查询姓名中有“明”字的学生人数。 2计算‘JSJ’系的平均年龄及最大年龄。 3查询学生中姓名为张明、赵英的人数 4计算每一门课的总分、平均分,最高分、最低分,按平均分由高到低排列 5 计算 1001,1002 课程的平均分。 6 查询平均分大于80分的学生学号及平均分 7 统计选修课程超过 2 门的学生学号 8 统计有10位成绩大于85分以上的课程号。 9 统计平均分不及格的学生学号 10 统计有大于两门课不及格的学生学号 三连接 1查询 JSJ 系的学生选修的课程号 2查询选修1002 课程的学生的学生姓名 (不用嵌套及嵌套2种方法) 3查询数据库原理不及格的学生学号及成绩 4查询选修“数据库原理”课且成绩 80 以上的学生姓名(不用嵌套及嵌套2种方法) 5查询平均分不及格的学生的学号,姓名,平均分。 6查询女学生平均分高于75分的学生姓名。 7查询男学生学号、姓名、课程号、成绩。(一门课程也没有选修的男学生也要列出,不能

SQLServer2005函数大全

SQL Server 2005 函数大全 字符串函数 (2) 日期和时间函数 (3) 日期部分 (5) 数学函数 (6) 数据类型转换函数 (7) 日期类型数据转换为字符数据类型的日期格式的部分样式表 (8) 系统函数 (11) 排名函数 (11) 聚合函数 (12)

字符串函数 表达式:是常量、变量、列或函数等与运算符的任意组合。以下参数中表达式类型是指表达式经运算后返回的值的类型 函数名称参数示例说明 ascii (字符串表达式) select ascii('abc') 返回 97返回字符串中最左侧的字符的ASCII码。 char(整数表达式) select char(100) 返回 d 把ASCII 码转换为字符。 介于0 和255 之间的整数。如果该整数表达式不在此范围内,将返回NULL 值。 charindex (字符串表达式1,字符串表达式 2[,整数表达式]) select charindex('ab','BCabTabD')返回3 select charindex('ab','BCabTabD',4)返回6 在字符串2中查找字符串1,如果存在返回第一个匹配的 位置,如果不存在返回0。如果字符串1和字符串2中有一个 是null则返回null。 可以指定在字符串2中查找的起始位置。 difference (字符串表达式1,字符串表达式2) select difference('Green','Greene')返回4 返回一个0到4的整数值,指示两个字符表达式的之间的相似程度。0 表示几乎不同或完全不同,4表示几乎相同或完全相同。注意相似并不代表相等 left (字符串表达式,整数表达式) select left('abcdefg',2) 返回 ab返回字符串中从左边开始指定个数的字符。 right (字符串表达式,整数表达式) select right('abcdefg',2) 返回fg返回字符串中从右边开始指定个数的字符。 len(字符串表达式) select len('abcdefg')返回 7 select len('abcdefg ') 返回7 返回指定字符串表达式的字符数,其中不包含尾随空格。lower (字符串表达式) select lower('ABCDEF')返回 abcdef返回大写字符数据转换为小写的字符表达式。 upper (字符串表达式) select upper('abcdef')返回 ABCDEF返回小写字符数据转换为大写的字符表达式。 ltrim (字符串表达式) select ltrim(' abc')返回 abc返回删除了前导空格之后的字符表达式。 rtrim(字符串表达式) select rtrim('abc ')返回 abc返回删除了尾随空格之后的字符表达式。 patindex (字符串表达式1,字符串表达式2) select patindex('%ab%','123ab456')返回4 select patindex('ab%','123ab456')返回0 select patindex('___ab%','123ab456')返回1 select patindex('___ab_','123ab456')返回0 在字符串表达式1中可以使用通配符,此字符串的第一个 字符和最后一个字符通常是%。 %表示任意多个字符,_表示任意字符 返回字符串表达式2中字符串表达式1所指定模式第一次出现 的起始位置。没有找到返回0 reverse (字符串表达式) select reverse('abcde')返回 edcba返回指定字符串反转后的新字符串space (整数表达式) select'a'+space(2)+'b' 返回 a b返回由指定数目的空格组成的字符串。

相关文档
最新文档