- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
PAGE21/NUMPAGES21
实验二:SQL查询示例练习
1实验目的
掌握SQLServer数据库附加操作。
掌握SQLServerManagementStudio中编写和执行SQL代码的方法。
完成教材3.4节的SQL查询例子。
练习SQL查询的分析能力,撰写关系代数表达式
2实验内容
2.1 按照实验指导3.1,将“实验02压缩包”中的SQLServer数据库文件附加到SQLServer2008数据库服务器中。
2.2 按照实验指导3.2,完成教材3.4节的所有SQL查询例子(【例1】-【例52】)。
2.3填写实验报告。
2.4写出教材3.4节的所有SQL查询例子(【例1】-【例52】)的关系代数表达式。
3实验指导
3.1 SQLServer2008附加数据库操作。
步骤1:登录和连接了SQLServer2008数据库引擎之后,在MicrosoftSQLServerManagementStudio的对象资源管理器中打开数据库(如下图)。资源管理器树中的根节点是SQLServer数据库服务器,如果数据库服务器没有启动,右键单击该节点启动之。
步骤2:右键单击【数据库】节点,选择【附件】菜单命令,单击【添加】按钮,然后把实验2压缩包中的SQLServer数据库文件DBSC.mdf和DBSC.ldf附加到数据库服务器上(见下图)。注意:两个数据库文件最好存放在你易于管理的一个文件夹中。
附加了数据库之后,【数据库】节点下会看到DBSC数据库(见下图)。
DBSC数据库实现了上课用的教材中的例子,有3个表,其关系模式和数据和教材上的完全相同。目的是为了让大家把教材上的SQL语句都过一遍,理解SQL查询语句的写法。
3.2 编写和执行SQL查询语句。
单击管理工具窗口左上侧【新建查询】按钮打开查询编辑器(如下图)。注意:图中三个图突出的红色框是为了提醒大家执行SQL语句要注意的,左边红色框指定当前的数据库是DBSC,右边的红色框是执行SQL语句的按钮。
数据查询:91页
例1:SELECTSno,Sname
FROMStudent
例2:SELECTSname,Sno,Sdept
FROMStudent
例3:SELECT*
FROMStudent
例4:SELECTSname,2004-Sageas出生年份
FROMStudent
ORDERBY出生年份DESC
例5:SELECTSnameasNAME,YearofBrith:asBIRTH,2004-SageasBIRTHDAY,LOWER(Sdept)aslowersdept
FROMStudent
ORDERBYBIRTHDAYASC/*Sdept用小写字母表示*/
例6:SELECTSno/*去除重复行要加DISTINCT,缺省值为ALL*/
FROMSC
SELECTDISTINCTSno/*去除重复行要加DISTINCT,缺省值为ALL*/
FROMSC
例7:SELECTSname
FROMStudent
WHERESdept=CS
例8:SELECTSname,Sage
FROMStudent
WHERESage20
ORDERBYSageDESC
例9:SELECTDISTINCTSname,SC.Sno,Grade
FROMSC,Student
WHEREGrade90ANDSC.Sno=Student.Sno
ORDERBYGradeDESC
例10:SELECTSname,Sdept,Sage
FROMStudent
WHERESageBETWEEN20AND23/*等价于Sage=20ANDSage=23*/
例11:SELECTSname,Sdept,Sage
FROMStudent
WHERESageNOTBETWEEN20AND23/*等价于Sage20ORSage23*/
例12:SELECTSname,Ssex
FROMStudent
WHERESdeptIN(CS,MA,IS)
例13:SELECTSname,Ssex
FROMStudent
WHERESdeptNOTIN(MA,IS)
例14:SELECT*
FROMStudent
WHERESnoLIKE200215121/*该查询为一个确定查询,一般用‘=’代替‘LIKE’*/
例15:SELECTSname,Sno,Ssex
文档评论(0)