SQL数据库实验报告 (1)

合集下载

sql数据库实验报告

sql数据库实验报告

sql数据库实验报告目录1. 实验概述 (2)1.1 实验目的 (2)1.2 实验背景 (3)1.3 实验内容 (4)1.4 实验环境 (5)2. 数据库设计 (5)2.1 数据库概念 (6)2.2 表结构设计 (8)2.2.1 表1名称及字段定义 (9)2.2.2 表2名称及字段定义 (10)2.3 关系约束 (11)3. SQL语句操作 (12)3.1 数据插入 (13)3.2 数据查询 (14)3.2.1 根据条件查询 (15)3.2.2 聚合函数查询 (16)3.2.3 连接查询 (17)3.3 数据更新 (18)3.4 数据删除 (20)4. 实验结果展示 (21)4.1 SQL语句执行结果 (22)4.2 数据分析及解释 (22)4.2.1 查询结果的意义 (24)4.2.2 数据之间的关系性分析 (24)5. 实验总结与展望 (25)5.1 实验总结 (26)5.2 总结得到的经验与教训 (27)5.3 进一步研究建议 (29)1. 实验概述本实验旨在通过实践操作,实验内容涵盖了常见数据库操作,包括表创建、数据插入、查询、修改和删除。

通过完成实验,我们将学习如何使用SQL语句来管理和处理数据库数据,掌握常用的 SELECT、INSERT、UPDATE、DELETE 语句以及 JOIN 操作等,并熟悉数据库的操作流程和概念。

本实验旨在提升 SQL 数据库操作技能,并为后续更深入的数据库学习和应用打下基础。

您可以根据实际实验内容对以上段落进行修改和完善,具体修改点包括:明确实验的主题和目标,例如:实验主题可能是某个特定数据库管理系统(如MySQL、PostgreSQL等)的应用,目标可能是学习该数据库特定的功能特性。

1.1 实验目的本次实验旨在通过实际操作,验证和巩固SQL语言在关系型数据库管理中的应用能力,并加深对数据库设计、数据操作以及数据查询与分析的理解。

具体实验目的包括:学习SQL基础:掌握SQL语言的基本语法和常用命令,包括数据类型定义、表格创建、插入、更新和删除操作。

SQL数据库完整实验报告

SQL数据库完整实验报告

学生学号实验课成绩学生实验报告书实验课程名称企业数据库应用开课学院管理学院指导教师姓名学生姓名XXX学生专业班级人力ZY09012010 — 2011 学年第2 学期实验报告填写规范1、实验是培养学生动手能力、分析解决问题能力的重要环节;实验报告是反映实验教学水平与质量的重要依据。

为加强实验过程管理,改革实验成绩考核方法,改善实验教学效果,提高学生质量,特制定本实验报告书写规范。

2、本规范适用于管理学院实验课程。

3、每门实验课程一般会包括许多实验项目,除非常简单的验证演示性实验项目可以不写实验报告外,其他实验项目均应按本格式完成实验报告。

在课程全部实验项目完成后,应按学生姓名将各实验项目实验报告装订成册,构成该实验课程总报告,并给出实验课程成绩。

4、学生必须依据实验指导书或老师的指导,提前预习实验目的、实验基本原理及方法,了解实验内容及方法,在完成以上实验预习的前提下进行实验。

教师将在实验过程中抽查学生预习情况。

5、学生应在做完实验后三天内完成实验报告,交指导教师评阅。

6、教师应及时评阅学生的实验报告并给出各实验项目成绩,同时要认真完整保存实验报告。

在完成所有实验项目后,教师应将批改好的各项目实验报告汇总、装订,交课程承担单位(实验中心或实验室)保管存档。

附表:实验成绩考核建议观测点考核目标成绩组成实验预习1.对验证型实验,考察对实验原理与方法的预习情况2.对于综合型、设计型实验,着重考查设计方案的科学性、可行性和创新性对实验目的和基本原理的认识程度,对实验方案的设计能力20%实验过程1.是否按时参加实验2.对实验过程的熟悉程度3.对基本操作的规范程度4.对突发事件的应急处理能力5.实验原始记录的完整程度6.同学之间的团结协作精神着重考查学生的实验态度、基本操作技能;严谨的治学态度、团结协作精神30%结果分析1.所分析结果是否用原始记录数据2.计算结果是否正确3.实验结果分析是否合理4.对于综合实验,各项内容之间是否有分析、比较与判断等考查学生对实验数据处理和现象分析的能力;对专业知识的综合应用能力;事实求实的精神50%实验项目名称SQL Server的安装及操作实验者xxx 专业班级人力ZY0901同组者无实验日期2011年3月11日一、实验目的、意义1、写出SQL Server的功能与特点,使用方法,应用状况的报告。

SQL数据库实验报告

SQL数据库实验报告

湖北国土资源职业学院SQL数据库实验报告2010-2011 学年第二学期实验名称数据库应用技术班级测量0902指导老师侯文平学生姓名杨然系(部)测绘工程系实训时间2011年5月实验一注册服务器与创建数据库一、实验目的1.熟悉SQL Server 2005管理平台的环境2.掌握注册服务器的过程3.了解Microsoft SQL Server中系统数据库中的数据4.掌握创建库5.掌握创建数据表二、实验内容1. 使用联机丛书2.注册服务器3.创建数据库4.创建数据表三、仪器、设备、材料微机四、实验准备1.理论知识预习及要求①服务器组的创建;②服务器的注册;③创建数据库;④创建数据表;2.实验指导书预习及要求上机前先预习第一、二章的内容及附录A中的实验一,理解注册服务器的作用。

3.其他准备无五、实验原理或操作要点简介注意服务器要先启动,才能与服务器建立连接。

六、注意事项要养成为文件取有意义名称的习惯。

要及时保存文件,避免死机或断电造成的文件丢失。

创建过程中,出现问题时,请保存,请老师解答。

创建过程中,若出现找不到相应的问题时,要看联机丛书,逐步学会自学。

七、实验过程与指导1. 使用联机丛书(操作步骤参考教材P273实验一中的操作步骤)2.注册服务器(操作步骤参考教材P8)3.创建数据库(操作步骤参考教材P12,要求将数据库存储在最后一个磁盘,以自己姓名命名的文件夹,如F:\hwp)4.创建数据表以界面方式建立一个学生基本情况表(tblStudent),建立的要求如下表。

以界面方式建立一个班级表(tblClass),建立的要求如下表。

5.往表中插入记录①往tblStudent表中插入记录。

观察:●蔡文姬的性别在输入的时,没有输入,输入完成后,变成了什么?为什么?●曹操的性别误输入为“国”,也成功的存储了。

我们可以在保存数据前做什么工作,防止用户输入错误的发生?继续,往tblStudent表中插入记录。

输入完成,提交更新行时,会出现下面错误提示:思考:该提示的含义是什么,由什么原因引起?②往tblClass表中插入记录。

SQL数据库实验报告 (1)

SQL数据库实验报告  (1)

资源与环境科学学院实验报告一、上机实习名称:SQL Server的安装及数据库的建立二、实验目的:1、通过对某个商用数据库管理系统的使用,了解DBMS的工作原理和系统构架。

2、熟悉对DBMS的操作3、熟悉如何使用SSMS和SQL建立数据库和表,并加深对于完整性的理解。

三、实验内容:1、根据安装文件的说明安装数据库管理系统。

2、学会启动和停止数据库服务,思考可以用哪些方式来完成启动和停止。

3、掌握管理工具的使用(1)SQL Server Management Studio的使用➢连接服务器的方法➢查询分析器的使用(2)配置管理器的使用4、了解数据库系统的逻辑组件:它们主要是数据库对象,包括基本表、视图、触发器、存储过程、约束等。

今后将学习如何操作这些数据库对象。

5.在SSMS中创建数据库和表四、实验步骤1. SQL Server 2008的体系结构和特点介绍SQL Server 是一个关系数据库管理系统。

由微软公司2008年第三季度正式发布, SQL Server 2008是一个重大的产品版本,在安全性、可用性、易管理性、可扩展性、商业智能等方面有了更多的改进和提高,对企业的数据存储和应用需求提供了更强大的支持和便利,使得它成为迄今为止最强大和最全面的SQL Server版本。

SQL Server 2008 版本体系:根据不同的用户类型和使用需求,微软公司推出了5种不同的SQL Server版本,包括企业版(Enterprise)、标准版(Standard)、工作组版(Workgroup)、学习版(Express)和移动版(Compact)Microsoft SQL Server 2008系统由4个主要部分组成。

这4个部分被称为4个服务,这些服务分别是数据库引擎、分析服务、报表服务和集成服务。

2. SQL Server管理工作室的启动打开windows控制面板—管理—服务,启动SQL Server 服务,如下图(1)开始→程序→Microsoft SQL Server 2008→SQL Server Management Studio(如图1.1所示)。

数据库SQL语句实验报告

数据库SQL语句实验报告

数据库SQL语句实验报告《数据库原理及应⽤》实验报告SQL语句部分总成绩:实验⼀熟悉SQL SERVER,数据定义实验实验⼀成绩:⼀、实验⽬的1、利⽤查询分析器创建数据库2、利⽤查询分析器⽤SQL语⾔定义基本表、索引并进⾏相关操作⼆、实验步骤及内容在以下实验中,使⽤学⽣-课程数据库,它描述了学⽣的基本信息、课程的基本信息及学⽣选修课程的信息。

1.创建学⽣课程数据库5.将以上创建表S、C、SC的SQL命令以.SQL⽂件的形式保存在磁盘上。

6、在表S上增加“出⽣⽇期”属性列。

7、删除表S的“年龄”属性列。

8、删除S姓名列的唯⼀值约束。

9、修改SC表成绩属性列为精确数字型。

10、在表S上,按“Sno”属性列的唯⼀值⽅式建⽴索引。

11、删除表SC,利⽤磁盘上保存的.SQL⽂件重新创建表SC。

12、创建教材P74页习题5中SPJ数据库中的四个关系:S、P、J、SPJ。

三、实验结果:1.创建学⽣课程数据库create database Studend;(Sno CHAR(9)PRIMARY KEY,Sname CHAR(20)UNIQUE,Ssex CHAR(2),Sage smallint,Sdept char(20),);3.创建课程关系表C :(Cno char(4)primary key,Cname CHAR(40),Cpno char(4),Ccredit SMALLINT,);(Sno char(9),Cno char(4),Grade smallint,);5.将以上创建表S、C、SC的SQL命令以.SQL⽂件的形式保存在磁盘上。

6、在表S上增加“出⽣⽇期”属性列。

alter table S add Sbirthday datetime;7、删除表S的“年龄”属性列。

alter table S drop column Sage;8、删除S姓名列的唯⼀值约束。

alter table S drop UQ__S__7D78A4E7;9、修改SC表成绩属性列为精确数字型。

SQL实验报告(优秀范文5篇)

SQL实验报告(优秀范文5篇)

SQL实验报告(优秀范文5篇)第一篇:SQL实验报告实验四触发器实验(一)after触发器(1 1)在l l i neitem 表上定义一个 after 触发器, , 当修改列项目e e xtendedprice d i scountx tax 时, , 要把 s orders 表得to o tal pri ce e 一起修改, , 以保证数据一致性C RE ATE T RIGGERtrig _line ite m_ pr ice_ update on line it em fo rupda teaasbegin i f(UPDATE(ex tend edprice)o r UPDATE(tax)or UPD AT E(di scou nt))begin-—声明游标变量指向 inserted 表d eclarecursor_inserted c urs orrea d_onlyofor select order key,linenu mber,exte nd edpr ice, dis coun t, taxfromin ser ted—-息信找查取获量变明声ﻩ声明变量获取查找信息de clare order key in t, @linenumb erint,exte nd edpricereal,disscount real,tax real—-打开游标epoﻩen cursor_i ns ert ed—-标游取读ﻩ读取游标fe tchnextfrom cur sor _i ns erte dint o@o rderkey, @lin enumber,eext ende dprice, @di scount,t axwwhi le FETC H_S TATUS =0 nigebﻩnﻩ—-声明一个变量保存重新计算得新价格cedﻩﻩecl are @n ew_tota lpri cer ealﻩ select @n ew_t otal price= @ext en dedpr ice *(1 -@di scou nt)*(1 +@tax)—-用新得总价格变量更新 orders 表得 t ot alprice puﻩﻩupdate orde rsse t tot alpri ce= new_totalprice where or derkey=orde rkeyen hctefﻩext f ro m cur sor_i nser ted int o@order ke y, @li nenum ber, @ex tende dp rice,discoun t, @taxdneﻩllaedﻩlocate c ur sor_i nser te deend end ﻩ(2)在在 linei tem表上定义一个 aftr er 触发器, , 当增加一项订单明细时, ,自动修改 s orders 表得 total p rice, 以保证数据一致性CREATE TR IGGER tri g_ lineit em_price_ in sert on l ine item ffor inse rta sbegin ——向指量变标游明声ﻩ声明游标变量指向ins erted 表de clarec ursor_inse rtedcursorread_ onl yﻩ for s ele ct orderkey,linenumbe r,ex te ndedp ric e,di scou nt,t axfrom insserte d--声明变量获取查找信息edﻩeclare @orde rk eyint, @lin enumber int,e xten dedp ricereal, @discountreal, @ta xreal -—ﻩ-打开游标open cursor_i ns erte d--ﻩ-读取游标fe tc hnex tf romcu rsor_ins ertedinto@o rd erkey,li nen umbeerr, ex ten ded pric e,dis count,tax ihwﻩile @@FE TCH_ STATU S=0 ebﻩegin-—格价新得算计新重存保量变个一明声ﻩﻩ声明一个变量保存重新计算得新价格cedﻩclare @n ew_tot alprice realcelesﻩct new _to ta lprice= @extend edp rice *(1-d is count)*(1+tax)—-新更量变格价总得新用ﻩﻩ用新得总价格变量更新orders 表得totalpri ceﻩ u pda teor ders s ett ota lpric e=total pric e+ @new_ tota lpr ice wwhhe re o rderke y=orderkeytefﻩetch next from cursor_ ins erte dinto o rder key, @l inen umber,e xtendeddp ric e, @disc ou nt, @t axeend aedﻩdeall oca te cu rsor_in serted en d(3)在l in e ite m表上定义一个a ft er触发器, , 当删除一项订单明细记录时, ,自动修改 orders 表得 tot a lprice, 以保证数据一致性CREATE TRI GG ER trig _line item_price_de let eon line item fo r de let eAAS begin--声明游标变量指向delet ed 表de clar e curso r_d eleted cursorre ad _on lyesrofﻩﻩele ctord erk ey,line numbe r,extende dp rice,discoun t, taxfromdel eted-ﻩ--声明变量获取查找信息declare ord erkey int,linenum be rint,extendedp ri ce r eal,discou nt real,ta xreal -—ﻩ-打开游标epoﻩen c urso r_ deleted——标游取读ﻩ读取游标efﻩetch next fr om cur sor_delete d in toorder ke y,l inenumb er,ext enddedprice, @di scoun t,taxwh ile@FETCH_STATUS=0begi n-—声明一个变量保存重新计算得新价格ﻩ declare @ne w_ to talpric erealﻩsselec t@new_t otalpr ice= @exte nde dpri ce*(1-@disco unt)*(1+ tax)-ﻩ-—用新得总价格变量更新orders 表得tot alp rice uﻩﻩupd ateorders set t otalpri ce=to talpr ice-@new _totalp rice wh er e order key= @ord erkeyfetchn ext f rom cursor_inse rt ed in to orderkey, @line numbe r,extendeeddprice, @d iscou nt,t ax dneﻩndddeal lo cat e cur sor_inse rted eend((4 4))验证 up d at e触发器—-查瞧号订单得 to ta a l pr i ceselec t*fro o mo o r ders whereorde r key=1 8 30;—-查瞧明细表得相关信息se l ect *f ro mlin ei i te e mw here or de e r key=183 0and l ine num m be e r =1;——验证 e update 触发器updat elineitem set t ax=tax+0、05whe re orderkey=1830;(二)i i n steadof触发器((1))在在 lineit em 表上定义一个ins tead o fupda te触发器, 当修改明细表中得数量量quan ti ty 时, 应先检查供应表par tsupp 得av ai lqty 就是否足够, 不足够则拒绝执行, 否则执行并修改相应数值以保证数据一致性于由于 in steadof 触发器更新某个表会使得该表上其她不满足更新列不能更新,因因用此逆向思维使用 a fter 触发器实现相同效果即先更新 qu antity, 再比较av ailqqtty, 如果满足更新数量, 就修改partsupp 得表得 a vailqty, 如果不满足, 则把lineitem得quantity 更新之后得数据重新修改回来ccreate trigge r trig_lin eit em_quanti ty_ upda teonli neit em f or upda teas begin if UPDATE(qu ant ity)bbegin ——向指别分量变标游明声ﻩ声明游标变量分别指向 i nserted 表与 d el eted 表edﻩdeclare c urso r_inser tedcur sorr ead_on lyfortcelesﻩﻩtorde rkey, partk ey,s uppkey,lin enum ber, quantit yfr om i nserteddecl arecursor_de leted c urs orrea d_ onl yf or select quantityfr om deleted-—息信找查取获量变明声ﻩ声明变量获取查找信息decl are@qu an tity _dif f_lineitem i nt,q uanti ty_pa rtsup p i nt cedﻩclare suppkey int, @par tke y in t,o rd erkey i nt,unenilﻩﻩum ber int ,qty _inserted in t , @qty_deleted int--打开游标ruc nepoﻩrsor_in sert ed poﻩopen cur sor_d eleted-—量变给赋值数标游取读ﻩ读取游标数值赋给变量fﻩfet chnext fromcu rsor_ insert edﻩiinto or de rk ey,pa rtkey, @suppk ey, @line nu mber, @qty _ins erte df et chnext fromcursor _d eletedint o q ty _de lete dwhi le fe tch_st atus=0 gebﻩegin--计算订单明细修改时, 订购数量得变化值inserte d表项-d elet ed表项ssel ect quantity_d if f_ li neit em= @q ty _in se rte d—@@q ty_deleteedﻩ--从parts upp 表获取ava ilq ty值, 注意partsupp 表得主键为(partk ey,suppkeey)tcelesﻩﻩt@quanti ty_p ar tsupp =av ailq ty fro m pa rtsu ppwﻩﻩwh er e suppkey= suppke yand part key= @par tk ey-—断判始开ﻩﻩ开始判断gebﻩbegi nfiﻩf quant ity _d iff_ lin eite m=0ﻩﻩ p rin t“ 更新得数量与原表中得值相同, 不需要更新”e ls eif @quantit y_d iff_lin eitem 〈=q uantity_partsuppﻩbe ginﻩpuﻩﻩpd ate partsupps et avail qty= availqty-@qua ntit y_d iff_li ne item ﻩpus erehwﻩppkey=suppkeyandp artkey= @par tke yﻩﻩ p rint “ 两个表都更新成功’ ﻩﻩﻩneﻩndels eigebﻩﻩinﻩuﻩﻩupdate li nei temsetquantit y=quantity+ @quanti ty_diff_linei temwhe re o rd erke y=@orde rke y and li nenu mber= @liine numberﻩp ri nt '更新失败”ﻩﻩendﻩ e nd efﻩﻩetch ne xtfr om c urso r_i nsertedi nto @ord erke y, @partkey,s upp key, @linenumb er, @qt y_ ins ert edf etch ne xt from curso r_de leted into @qt y_d elet ed dneﻩndd eallocat e cur sor _i nserte ddealloc at e cursor_de le ted eend eend(2)在在 l ineite m表上定义一个 instea d of in sert 触发器, 当插入明细表中一条记录时时, 应先检查供应表par tsupp 得得 ava il qt y就是否足够qu anti ty 得数量c rea te t rig ger tri g_lineitem_q ua nti ty_ insertonline item iinstead of inser t as bbegin-—声明游标变量指向 inserte d表d eclar e cur sor_inserte dcur sorrea d_ only f orsﻩﻩselect or derk ey,pa rtkey,sup pk ey, lin en umber,q uantityf rom ins er ted-—声明变量获取查找信息dec lare quantity int, @av ailq ty i nt, @suppkeyin t, @partkeyinntt, @o rderkey int, @linenu mber int-—标游开打ﻩ打开游标c nepoﻩcurs or_ins erted -ﻩ-—读取游标f etc hnext fro mcursor_insert edint o@orde rkey,partkey,@@ssuppkey, @linenumber,qu antity wh ile @@FETCH_S TATUS= 0igebﻩin--为变量赋值a tcelesﻩavailqtyy==av ai lqt y fr ompartsuppwﻩwhe re suppkey =@su ppk ey and part ke y= partke yﻩ if @quant ity 〈= @avail qt y-—如果可以更新bﻩbegin /ﻩﻩﻩ/*将将 insert ed 表中得记录插入到明细表*/ ﻩsniﻩserti nto l ineite m select *from i nsertedro=yekredroerehwﻩﻩrderk ey andlinenumb er = @linenumber */ﻩﻩ新更时同ﻩ*同时更新 part supp 表得数量*/ﻩﻩuupd ate pa rtsup pset a vailqty=availqty-@quanti tyﻩerehwﻩe sup pke y= @sup pkey and partkey=part key ppr int ’paarts upp 表有足够得货物可以满足 lin eitem 得quan tityy, 插入成功’endelsebeginﻩﻩ p rintt''pa rt sup p表没有足够得货物可以满足 l ineitem 得得q uantity,插入失败’dneﻩfﻩﻩfetc h next from curso r_ins ert ed in to@ord erkey, partkey, suppkey, @liinenumbe r, qu antity eﻩen ddeall ocat ecursor_ inserted end(3)在在 line ite m表上定义一个 inste ad of del ete 触发器,当当删除明细表中记录时时, 同时改变表供应表 partsupp 得ava il qtyy数值 c re ate trigge r tri g_ lin eit em_quanti ty_ del ete o n line item inste ad of del ete as be gin—-声明游标变量指向deleted 表de cla re curs or_ del eted c ursorread _only forlesﻩﻩelect or derke y, par tkey,sup pkey, linenumbe r,quan tity fr om deleted -ﻩ--声明变量decl are s upp key i nt, par tke yint, @orde rkey int,linen umb erint, @quaant it y int—-标游开打ﻩ打开游标opencursor_deleted-—标游取读ﻩ读取游标ffetch next fr omcurs or _del et edin to @ord erkey , @partkey,s uppkeey, @lin en umber,q ua ntitywhi leFFET CH_ STATUS=0 igebﻩin*/*除删ﻩ*删除*/ﻩ de let e fromlineite m where linenu mber= line number and o rde rkey =ordder key*/新更时同ﻩ同时更新 pa rt supp 表得数量*/u pdateparts uppse tavailqt y=a vai lq ty+quant ityﻩ where s uppke y= @s uppkey a nd par tk ey= @p ar tkeyﻩ p rin t’ 删除成功, 并且已经把货物数量归还到 p ar tsup p里“ fﻩﻩfetc h ne xt fr omcurso r_del etedinto @ord er ke y,p ar tkey,@@suppkey, @lin enu mber,quanti ty neﻩnd edﻩea lloc ate cursor_ delete dend(4)验证 update 触发器--查瞧li neit em 得quan tit y select*fr omlin eit em whe re or derk ey =1830and li nenum ber=1;——查询partsupp 表得ava ilqt y se lect * from part supp w here suppk ey =(selectsupp key fr omlin eitem w here ord erkey=18 30)and partk ey=(s elec t part key from lin eite mwh er eorder key =18 30 a nd linenu mber=1)---更新数量过大——更新得值与原值相同---更新到+ + 2 00 数量, , 成功updateli neitem setquant ity=q uanti ty+ 200where order key=1830and lin en umber =1;--更新 +2 00成功后l ineite m得 quanti ty y 变化——更新+200 成功后par ts upp 表得a va ilqty 变化实验到此。

SQL数据库实验报告

SQL数据库实验报告

带条件查询一、实验名称:二、日期三、实验目的和内容(这是实验报告极其重要的内容。

)1.SQL Server工具的环境和使用;2.利用SELECT语句实现简单的查询需求;3.掌握使用逻辑操作符来抽取基于多个满足条件的记录4.掌握使用范围操作符、列表操作符、模式匹配操作符、为空操作符来抽取满足条件的记录的方法5.掌握使用ORDER BY 从句来以特定的顺序抽取数据的方法6.掌握使用TOP 关键字仅抽取行的前面集合7.掌握使用DISTINCT 关键字消除重复行四、实验过程及结果(给出实验主要的步骤和实验结果, 包括算法或代码)1.SELECT EmployeeID,Rate,rank()OVER(ORDER BY Rate desc)AS RANK FROM HumanResources.EmployeePayHistory2.SELECT EmployeeID,Rate,dense_rank() OVER(ORDER BY Rate desc)AS rankFROM HumanResources.EmployeePayHistory3.SELECT Title,convert(char(10),HireDate,2)As'Hire Date'FROMHumanResources.Employee4.SELECT EmployeeID,upper(Title)AsDesignation,datediff(yy,Birthdate,getdate())As AgeFROM HumanResources.Employee WHERE Title='Marketing Manager'OR Title='Marketing Specialist'5.SELECT EmployeeID,EndDate FROM HumanResources.EmployeeDepartmentHistory WHERE EndDate IS NULL6.SELECT EmployeeID,Title,LoginID FROM HumanResources.Employee WHERE Title IN('Recruiter','Stocker')7.SELECT DISTINCT Title FROM AdventureWorks.HumanResources.Employee WHERE Title LIKE 'PR%'五、实验体会(包括有疑问的)这次实验, 我了解了.SQL Server工具的环境和使用, 学习了使用逻辑操作符来抽取基于多个满足条件的记录., 以及使用范围操作符、列表操作符、模式匹配操作符、为空操作符来抽取满足条件的记录的方法使用ORDER BY 从句来以特定的顺序抽取数据的方法等等。

数据库系统概论-SQL语言实验报告

数据库系统概论-SQL语言实验报告

数据库系统概论学号:姓名:班级:指导老师:(一)实验目标通过“数据库系统概论”书本知识学习和“数据库原理与应用”课程教学所授知识对“教学管理系统”实验内容进行分析,建立相应的数据库、数据表、数据视图以及相应的界面程序,利用SQL结构化查询语言提供的数据操纵功能,编程设计实现对数据的定义、修改、删除、查询、更新以及控制等操作,并按照实验指导书的各项要求完成实验。

(二)实验说明1. 在工作站计算机的硬盘D盘符下,请同学们建立以自己名字命名的子目录(可以是汉字名,也可以是汉语拼音字母)。

再在此子目录下,建立用于存放上机实验文件的相关子目录,它们是\DATA;\PROGS 等,Data目录用来存放“教学管理系统”数据库文件。

Progs用来存放实验中的SQL语句和执行结果。

如用“萨师煊”的汉语拼音的第一个字母组成的“SSX”在D盘上建立目录后的结果是:D:\SSX\DATA; D:\SSX\PROGS 等。

2. 本课程实验要利用数据库管理系统SQL SEVER 2000进行实验,每台计算机上都已经安装好了微软公司的SQL Server 2000数据库管理系统,请熟悉SQL SEVER 2000的同学,根据SQL SEVER提供的客户端编程界面按照实验要求完成实验。

3. SQL Server 2000的安装过程见附录,建议同学们在自己的电脑上进行安装,熟悉安装过程及安全性设置。

在数据库身份验证模式上,建议使用混合模式。

实验一:设计数据库、数据表和数据视图并编程实现1. 目的要求(1)这是一个验证性实验。

(2)利用所学E-R数据模型图概念,描述“学生管理”系统中数据表之间以及各数据项之间的联系。

并按照课程教学大纲要求,转化相关E-R图为关系模型中对应的二维表,指出每个数据表中的关键字、索引项、外码以及表中需要满足完整性约束条件;(3)对照关系模型中(1:1)、(1:n)、(m:n)实体联系,指出各数据表实体属于哪一类联系。

SQL语言实验报告1

SQL语言实验报告1

一、实验目的与要求本实验课程的目的:熟练掌握用SQL对数据进行操作的方法,熟练掌握用SQL创建各种查询的方法,利用已有的数据资源,使用SQL语句进行数据定义、数据更新及各种查询操作。

本实验课程的基本要求:1)使用SQL语句完成数据定义的操作。

2)使用SQL语句完成单表查询的操作。

3)使用SQL语句完成分组查询的操作。

4)使用SQL语句完成连接查询的操作。

5)使用SQL语句完成嵌套查询的操作。

二、实验方案上机操作,使用Visual FoxPro软件完成课本《Visual FoxPro应用基础与面向对象程序设计教程》第146页的实验题,并撰写实验报告。

三、实验结果和数据处理(1)创建“学院”表:(2)创建“系”表:(3)创建“教研室”表:(5)创建“班级”表:(7)创建“课程”表:(9)创建“学生信息管理系统”库文件,并把前面8个表加入该库:(10)修改“学生”表的结构,给“学生”表增加一个“身高”属性:(11)将(’1010501’,’0501’,35,’王冬’,’软件工程’,’101’)记录插入到“班级”表中:(12)将“学生”表中“050101”学号改为“050111”:(13)查看学校里有多少个分院,院长是谁,如何联系:(15)查看每位学生的生日及籍贯:(17)查看在10101教室上课的课程名:四、结论通过老师的悉心教导和本人的努力学习,我基本学会了使用SQL语言,掌握了SQL对数据进行操作的方法,掌握了用SQL创建各种查询的方法,学会利用已有的数据资源,使用SQL语句进行数据定义、数据更新及各种查询操作。

我知道我现在学到的还只是一些基础性的知识,所以我会更加努力,争取学得更深入、学到更专业的知识。

五、问题与讨论问题:1、由于最近忙于书本学习,太久没接触电脑,手有点僵,打起字来比较慢,导致实验中经常出现打错字、打字慢等问题,本人花了一天的时间才完成这份实验报告。

2、实验报告做到一半的时候,电脑突然死机,导致部分内容丢失。

sql数据库实验报告范文

sql数据库实验报告范文

sql数据库实验报告范文数据库原理及应用(本科)实验指导书-计算机信息教研室-二○一二年五月目录实验1创建数据库与数据表 (2)实验2简单查询和连接查询 (10)实验3嵌套查询和集合查询 (12)实验4数据完整性 (14)时间:机房号:得分:实验1创建数据库与数据表实验目的:1.熟悉SQLSERVER环境;2.掌握数据库和数据表的创建和删除,实践SQL的CREATE、ALTER 和DROP命令;3.掌握数据表的创建和数据记录的插入方法。

实验内容:1.创建教学管理“J某GL”数据库,并建立学生STUDENT、课程COURSE和选修SC三个数据表,各表中的数据如下所示:学生STUDENT:SnoSnameSe某SageSdept95001李勇M20CS95002刘晨F19IS95003王敏F18MA 95004张立M18IS课程COURSE:CnoCnameCpnoCcredit 1数据库542数学23信息系统144操作系统635数据结构746数据处理27C语言64选修SC:CnoGrade95001192950012859500138895002290950023802.创建供应系统“GY某T”数据库,其中包括供应商表S、零件表P、工程项目表J和供应情况表SPJ四个数据表,各表中数据如下所示。

供应商S:SNAMECITYS1精益天津S2万胜北京S3东方北京S4丰泰隆上海S5康健南京零件P:PNOCOLORWEIGHT P1螺母红12P2螺栓绿17P3螺丝刀蓝14P4螺丝刀红14P5蓝40P6齿轮红30工程项目J:JNOJNAMECITYJ1三建北京J2一汽长春J3弹簧厂J4造船厂天津J5机车厂唐山J6无线电厂常州J7半导体厂南京供应情况SPJ:SNOPNOJNOQTYS1P1J1200 S1P1J3100 S1P1J4700 S1P2J2100 S2P3J1400 S2P3J2200 S2P3J4500 S2P3J5400 S2P5J1400 S2P5J2100 S3P1J1200P3J1200 S4P5J1100 S4P6J3300 S4P6J4200 S5P2J4100 S5J1200S5P6J2200S5P6J4500实验步骤:1.创建教学管理“J某GL”数据库。

sql数据库实验报告

sql数据库实验报告

数据库设计与管理实验报告班级:120506学号:XXXXXXXX姓名:XXX实验一数据库的创建与管理及表的管理一、实验目的1.了解SQL Server 2000中数据库的组成;2.熟练创建、管理数据库和事务日志。

3.熟练掌握创建、修改和删除表的方法;4.掌握向表中添加记录、修改记录及删除记录的方法;二、实验内容1.在D盘或E盘建立以学生名命名的文件夹,如图1所示。

在E盘建立文件夹2.分别使用企业管理器、CREATE DATABASE命令两种方法创建数据库和事务日志。

要求如下:数据库名字为S ale;数据文件初始大小为3MB,最大为10MB,文件增量为1MB;事务日志初始大小为2MB,最大为15MB,文件增量为1MB。

用企业管理器创建数据库创建数据文件创建事务日志CREATE DA TABASE创建数据库和事务日志3.向Sale中添加数据文件、日志文件(要求与上同);CREATE DATABASE Sale添加数据文件添加日志文件4.向Sale中添加新文件组,向新文件组中添加一个数据文件(要求与上同);向Sale中添加新文件组向文件组中添加数据文件5.删除后添加的数据文件、日志文件及文件组;删除添加的数据文件删除添加的日志文件删除文件组6.分别使用企业管理器及CREATE TABLE 在S ale数据库中创建如下表:客户表(Customer)产品表(P roduct)入库表(ProIn)销售表(ProOut)7.在企业管理器中给Customer、P roduct、ProOut表中输入记录,并练习记录的修改及删除在Customer中输入记录在P roduct表中输入记录在ProOut表中输入记录删除程序运行删除后效果图修改程序运行修改后效果8.向ProOut表中用insert语句插入表中所列最后一条记录;用update语句将销售日期为2002-1-2,客户编号为001,产品编号为00003的销售记录的销售数量改为18;用delete 语句删除客户表(Customer)中地址为新疆的客户。

数据库实验报告一SQL查询

数据库实验报告一SQL查询

(1) 查询员工的姓名、职务和薪水。

select employeename,employeeno,salaryfrom Employee(2) 查询名字中含有“有限”的客户名称和所在地。

select customerno,addressfrom customerwhere customername like'%有限%'(3) 查询出姓“张”并且姓名的最后一个字为“梅”的员工。

select*from employeewhere employeename like'张_梅'(4) 查询住址中含有“上海”或“南昌”的女员工,并显示其姓名、所属部门、职称、住址、出生日期和性别,其中如果出生日期为空,显示“不详”,否则按格式“yyyy-mm-dd”显示,性别用“男”和“女”显示。

select employeename,department,headship,address,birthday=case birthday when null then'不详'end,sex=case sex when'M'then'男'when'F'then'女'endfrom employeewhere address like'%上海%'or address like'%南昌%'(5) 查询出职务为“职员”或职务为“科长”的女员工的信息。

select*from employeewhere headship like'职员'or headship like'科长'(6) 选取编号不在C20050001~C20050004之间的客户编号、客户名称、客户地址。

select customerno,customername,addressfrom customerwhere customerno not between'C20050001'and'C20050004'(7) 在表OrderMaster中挑出销售金额大于等于5000元的订单。

SQL数据库系统实验报告(含代码、截图)

SQL数据库系统实验报告(含代码、截图)

数据库系统实验报告专业班级学生姓名及学号课程教学班号任课教师实验指导教师实验地点2012 ~2013 学年第二学期实验一使用向导创建和删除数据库一.实验目的1.熟悉SQL Server 中SQL Server Management Studio的环境2.了解SQL Server 数据库的逻辑结构和物理结构3.掌握使用向导创建和删除数据库的方法二.实验要求1.熟练使用SSMS进行数据库的创建和删除操作。

2.完成实验报告。

三.实验内容设有一学籍管理系统,其数据库名为“EDUC”。

初始大小为 10MB,最大为50MB,数据库自动增长,增长方式是按5%比例增长;日志文件初始为2MB,最大可增长到5MB,按1MB增长。

数据库的逻辑文件名为“student_data”, 物理文件名为“student_data.mdf,存放路径为“E:\sql_data”(注意:此文件名必须已经建立的前提下才可以此操作)。

日志文件的逻辑文件名为“student_log”, 物理文件名为“student_log.ldf”,存放路径为“E:\sql_data”。

四.实验步骤1.使用SQL Server Management Studio(简称SSMS)创建数据库。

(1)启动SSMS在开始菜单中:所有程序-SQL Server 2005 -SQL Server Management Studio单击“连接”按钮,便可以进入【SQL Server Management Studio】窗口。

如果身份验证选择的是“混合模式”,则要输入sa的密码。

(2)建立数据库在“对象资源管理器”窗口,建立上述数据库EDUC。

在数据库节点上右击选择新建。

同时建立一个同样属性的数据库EDUC1。

2. 使用向导删除上面建立的数据库。

用SSMS删除建立的数据库EDUC。

3、数据库的分离将刚建好的数据库分离出来,即点击新建的EDUC——任务——分离,将删除连接和更新打一个钩,然后点击确定。

(最新版)SQL数据库实验报告

(最新版)SQL数据库实验报告

西安邮电大学数据库课内实验报告书学院名称:计算机学院学生姓名:高丹专业名称:计算机科学与技术班级:1106班学号: (22)时间:2013.4—2013.5实验2 定义表和数据库完整性一、实验目的1.了解SQL Server 2000的基本数据类型、空值的概念,以及表的结构特点。

2. 学会使用T_SQL语句和企业管理器创建表结构和修改表结构。

3. 学会使用SQL Server 2000提供的数据完整性功能,并在创建表时定义表的数据完整性。

通过实验进一步理解数据完整性的概念及分类。

二、实验内容用T_SQL语句在Market数据库中创建客户基本信息表Cuetomers、货品信息表Goods、订单信息表Orders,它们的定义如下/*基本表的定义与创建*/CREATE TABLE Customers(CustomerID int IDENTITY(1,1)PRIMARY KEY,CName varchar(8)NOT NULL,Address varchar(50),City varchar(10),Tel varchar(20)UNIQUE,Company varchar(50),Birthday datetime,Type tinyint DEFAULT 1);CREATE TABLE Goods(GoodsID int CONSTRAINT C1PRIMARY KEY,GoodsName varchar(20)NOT NULL,Price money,Decription varchar(200),Storage int,Provider varchar(50),Status tinyint DEFAULT(0));CREATE TABLE Orders(OrderID int IDENTITY(1,1)CONSTRAINT C2PRIMARY KEY,GoodsID int NOT NULL REFERENCES Goods(GoodsID)ON DELETE CASCADE,/*表级完整性约束条件,参照约束为Goods(GoodID),删除时进行级联删除*/CustomerID int NOT NULL FOREIGN KEY(CustomerID)REFERENCES Customers(CustomerID)ON DELETE NO ACTION,/*表级完整性约束条件,参照约束为Customers(CustomerID),删除时不删除参照表中的被引用行*/Quantity int NOT NULL CONSTRAINT C3CHECK(Quantity> 0),Ordersum money NOT NULL,OrderData datetime DEFAULT(getdate()));实验3 表数据的插入、修改和删除一、实验目的掌握使用T_SQL语句和企业管理器对数据进行插入、修改和删除数据的操作,并体会数据完整性约束的作用,加深对数据完整性及其约束的理解。

数据库实验报告(sql)

数据库实验报告(sql)

《数据库实验‎》1 熟悉SQL‎ Serve‎r环境及其‎基本工具的‎使用实验学时:0.5学时实验类型:验证实验要求:必做一、实验目的熟悉SQL‎Serve‎r 2008的‎界面环境。

掌握SQL‎Serve‎r 2008管‎理工具的使‎用,包括企业管‎理器和查询‎分析器。

了解在查询‎分析器中执‎行S QL语‎句的方法。

了解数据库‎及数据库对‎象。

熟悉服务器‎的管理与使‎用。

二、实验内容1、打开企业管‎理器----SQL Serve‎r Manag‎e ment‎ S tudi‎o。

SQL Serve‎r Manag‎e ment‎ Studi‎o是SQL Serve‎r 2008的‎主要管理工‎具和开发工‎具,习惯上依然‎把它称为企‎业管理器,它将早期版‎本的SQL‎Serve‎r 中的企业管‎理器、查询分析器‎及Anal‎y sis Manag‎e r等功能‎整合到同一‎个环境中,并能和所有‎组件协同工‎作。

打开SQL‎Serve‎r Manag‎e ment‎ S tudi‎o后弹出连‎接服务器对‎话框,在“服务器名称‎”栏的下拉里‎选择“浏览更多”,展开数据库‎引擎,选择据计算‎机名,确认,连接。

2、在企业管理‎器左边的树‎型结构中查‎看数据库N‎o rthw‎i nd,观察该数据‎库中的所有‎数据库对象‎,如表、视图、存储过程、默认、规则等。

注:North‎w ind and pubs 示例数据库‎下载地址:http://www.micro‎s /en-us/downl‎o ad/confi‎r mati‎o n.aspx?id=23654‎安装时最好‎启动SQL‎Serve‎r Manag‎e ment‎ Studi‎o,装完后,右击“数据库”,选“附加”:点击“添加”,选择之前示‎例数据库安‎装的路径(C:\SQL Serve‎r 2000 Sampl‎e Datab‎a ses),找到NOR‎TH WND‎.MDF和P‎U BS.MDF两个‎文件,分别确定:附加好后,“数据库”列表下即有‎N o rth‎wi nd和‎p u bs。

数据库SQL实验报告_数据库的基本操作

数据库SQL实验报告_数据库的基本操作

数据库SQL实验报告_数据库的基本操作一、实验目的本次实验旨在通过实际操作,深入理解和掌握数据库的基本操作,包括创建数据库、创建表、插入数据、查询数据、更新数据和删除数据等,从而提高对数据库管理系统的应用能力和实践操作技能。

二、实验环境本次实验使用的数据库管理系统是 MySQL 80,操作系统为Windows 10。

三、实验内容及步骤(一)创建数据库1、打开 MySQL 命令行客户端,输入以下命令创建一个名为“my_database”的数据库:```sqlCREATE DATABASE my_database;```2、输入以下命令查看已创建的数据库:```sqlSHOW DATABASES;```(二)创建表1、使用以下命令切换到“my_database”数据库:```sqlUSE my_database;```2、创建一个名为“students”的表,包含“id”(整数类型,主键,自增)、“name”(字符串类型,长度为 50)、“age”(整数类型)和“grade”(整数类型)列:```sqlCREATE TABLE students (id INT PRIMARY KEY AUTO_INCREMENT,name VARCHAR(50),age INT,grade INT);```1、向“students”表中插入以下数据:```sqlINSERT INTO students (name, age, grade) VALUES ('张三', 20, 80),('李四', 21, 85),('王五', 19, 90);```(四)查询数据1、查询“students”表中的所有数据:```sqlSELECT FROM students;```2、查询年龄大于 20 岁的学生信息:```sqlSELECT FROM students WHERE age > 20;```1、将“张三”的年龄更新为 21 岁:```sqlUPDATE students SET age = 21 WHERE name ='张三';```(六)删除数据1、删除“grade”小于 80 的学生记录:```sqlDELETE FROM students WHERE grade < 80;```四、实验结果(一)创建数据库成功创建了名为“my_database”的数据库,并通过“SHOW DATABASES”命令验证了其存在。

数据库实验报告 SQL语言

数据库实验报告 SQL语言

数据库原理及实验报告实验6 视图实验目的:1)掌握交互式创建、删除视图的方法2)掌握使用SQL创建、删除视图的方法3)掌握交互式更新视图的方法4)掌握使用SQL更新视图的方法实验内容6.1实验题目:创建视图实验过程:1)交互式创建视图VIEW_S2)交互式创建成绩视图VIEW_SCORETABLE3)使用SQL创建课程表视图VIEW_CTABLE 实验结果:6.2实验题目:修改视图实验过程:1)使用交互式方法把视图VIEW_S 中的字段SNO 删掉2)使用SQL 为视图VIEW_CTABLE 增加一个课时字段CT tiny int 实验结果:6.3实验题目:通过视图修改数据库数据实验过程:1)交互式通过修改视图VIEW_S中的数据来实现对其基本表S中数据的修改2)对视图VIEW_S执行INSERT语句,查看此视图的基本表S中数据的变化3)修改视图VIEW_S的定义,使其包含表S中的主键,再执行插入操作4)用SQL语句对视图VIEW_S执行DELETE操作,查看此视图的基本表S中数据的变化实验结果:6.4实验题目:删除视图实验过程:1)交互式删除视图VIEW_S2)使用SQL删除视图VIEW_CTABLE实验结果:实验7 数据查询实验目的:1,掌握从简单到复杂的各种数据查询。

包括,单表查询、多表连接查询、嵌套查询、集合查询。

2,掌握用条件表达式表示检索结果。

3,掌握用聚合函数计算统计检索结果。

实验7.1 单表查询实验目的:1,掌握指定列或全部列查询。

2,掌握按条件查询。

3,掌握对查询结果排序。

4,掌握使用聚集函数的查询。

5,掌握分组统计查询。

实验内容:1,指定或全部列查询。

2,按条件查询及模糊查询。

3,对查询结果排序。

4,使用聚集函数的查询。

5,分组统计查询。

实验7.2 连接查询实验目的:掌握设计一个以上数据表的查询方法。

多表之间的连接包括等值连接、自然连接、非等值连接、自身连接、自身连接、外连接和复合连接。

SQL实训报告

SQL实训报告

SQL实训报告SQL实训报告(通用5篇)SQL实训报告篇1一、实验目的SQL(Structured Query Language)语言是关系数据库的标准语言。

是一种介于关系代数与关系演算之间的结构化查询语言,其功能并不仅仅是查询,SQL语言是一个通用的、功能极强的关系数据库语言。

本次实验了解SQL语言中DDL语言的CREATE、DROP、ALTER 对表、索引、视图的操作,掌握在Navicat for MySQL中用DDL语言进行对表、索引、视图的增加、删除和改动。

掌握使用SQL语句增加或删除约束,加深对完整性概念的理解,达到灵活应用的目的。

掌握使用SQL语句定义和删除同义词。

二、实验要求1、实验前:预习实验内容,学习相关知识。

2、实验中:按照实验内容要求进行实验,实验时注意每种SQL语句的基本命令及各个关键字的含义,做好实验记录。

3、实验后:分析实验结果,总结实验知识,得出结论,按格式写出实验报告。

4、在整个实验过程中,要独立思考、独立按时完成实验任务,不懂的要虚心向教师或同学请教。

5、要求按指定格式书写实验报告,且报告中应反映出本对次实验的总结,下次实验前交实验报告。

三、实验的重点与难点1、重点:(1)用SQL语句定义表结构(创建、修改和删除)。

(2)用SQL语句定义索引(创建、删除)。

(3)用SQL语句定义视图(创建、删除)。

(4)用SQL语句定义同义词(创建、删除)。

2、难点:完整性约束的定义、增加及删除。

同义词的定义与删除。

四、仪器设备及用具硬件:投影仪、每位同学分配已连接校园网PC机一台。

软件:本机已安装MySQL 5.5数据库平台。

五、教学过程(一)实验预习(1)熟悉SQL中的CREATE、DROP、ALTER语句的格式及所用的关键字含义及用法。

(2)掌握完整性约束定义、增加和删除的一般用法。

(3)掌握同义词定义、删除的一般用法。

(二)实验原理在Navicat for MySQL中使用CREATE命令完成对表、索引、视图、同义词的创建,使用DROP命令完成对表、索引、视图、同义词的删除,使用ALTER命令对表结构进行修改及完整性约束的增加、删除。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

资源与环境科学学院实验报告一、上机实习名称:SQL Server的安装及数据库的建立二、实验目的:1、通过对某个商用数据库管理系统的使用,了解DBMS的工作原理和系统构架。

2、熟悉对DBMS的操作3、熟悉如何使用SSMS和SQL建立数据库和表,并加深对于完整性的理解。

三、实验内容:1、根据安装文件的说明安装数据库管理系统。

2、学会启动和停止数据库服务,思考可以用哪些方式来完成启动和停止。

3、掌握管理工具的使用(1)SQL Server Management Studio的使用➢连接服务器的方法➢查询分析器的使用(2)配置管理器的使用4、了解数据库系统的逻辑组件:它们主要是数据库对象,包括基本表、视图、触发器、存储过程、约束等。

今后将学习如何操作这些数据库对象。

5.在SSMS中创建数据库和表四、实验步骤1. SQL Server 2008的体系结构和特点介绍SQL Server 是一个关系数据库管理系统。

由微软公司2008年第三季度正式发布, SQL Server 2008是一个重大的产品版本,在安全性、可用性、易管理性、可扩展性、商业智能等方面有了更多的改进和提高,对企业的数据存储和应用需求提供了更强大的支持和便利,使得它成为迄今为止最强大和最全面的SQL Server版本。

SQL Server 2008 版本体系:根据不同的用户类型和使用需求,微软公司推出了5种不同的SQL Server版本,包括企业版(Enterprise)、标准版(Standard)、工作组版(Workgroup)、学习版(Express)和移动版(Compact)Microsoft SQL Server 2008系统由4个主要部分组成。

这4个部分被称为4个服务,这些服务分别是数据库引擎、分析服务、报表服务和集成服务。

2. SQL Server管理工作室的启动打开windows控制面板—管理—服务,启动SQL Server 服务,如下图(1)开始→程序→Microsoft SQL Server 2008→SQL Server Management Studio(如图1.1所示)。

图1.1 SQL Server 2008 服务器连接GUI(2)在服务器类型(T)右侧的下拉列表中选择服务器类型。

本例选择:数据库引擎。

在身份验证(A)右侧的下拉列表中选择身份验证方式。

本例选择:Windows 身份验证;如果选择SQL Server身份验证,则还需要在其下方输入用户名和密码。

在服务器名称(S)右侧的下拉列表中选择:<浏览更多…>,然后选择相应的数据引擎。

本例选择:ZJGSU-HAPPYYOU,单击确定。

该GUI设置后的界面如图1.2所示。

图1.2 选择数据库服务器(3)在如图1.3所示的界面中,单击:连接(C),连接数据库服务器,并且启动SQL Server管理工作室(如图1.3所示)。

在启动后的SQL Server管理工作室中,就可以创建数据库、数据表和视图等数据库管理操作。

图1.3 SQL Server 管理工作室2.应用界面操作创建数据库(4)创建数据库Student在SQL Server 2008数据库管理系统的左边栏“对象资源管理器”中右击数据库对象,在弹出的快捷菜单中单击“新建数据库”命令。

在弹出的“新建数据库”对话框右侧的数据库名称中输入数据库名称“Student”,然后单击确定。

5)在Student数据库中新建表”Student”单击SQL Server 2008数据库管理系统的左侧的“对象资源管理器”栏中的”刷新”按钮,以显示出新建的数据库“Student”。

依次展开左侧栏对象资源管理器中的“数据库”->“Student”,并右击Student数据库中的表项目,在弹出的快捷菜单中单击“新建表”命令。

列名数据类型完整性约束Sno CHAR(5) 主码Sname CHAR(10) 非空Ssex BIT 无Sage INT 无Sdept CHAR(15) 无单击文件菜单中的保存命令保存该表,并取名为“Student”。

5)在Student数据库中新建表”Student”单击SQL Server 2008数据库管理系统的左侧的“对象资源管理器”栏中的”刷新”按钮,以显示出新建的数据库“Student”。

依次展开左侧栏对象资源管理器中的“数据库”->“Student”,并右击Student数据库中的表项目,在弹出的快捷菜单中单击“新建表”命令。

列名数据类型完整性约束Sno CHAR(5) 主码Sname CHAR(10) 非空Ssex BIT 无Sage INT 无Sdept CHAR(15) 无单击文件菜单中的保存命令保存该表,并取名为“Student”。

五、实习结果创建了HRM数据库,并输入了数据1.对上节建立的表输入数据:DepartmentID DepartmentName Note1 财务部财务部2 研发部研发部3 人力资源部人力资源部Employee ID Name BirthdaySexAddressZip PhoneNumberEmailAddress DepartmentID1001 李勇78-3-12 0 河南47500111002 王敏80-11- 1 河南47500 12、练习下面简单的查询语句:a) 查询每个雇员的所有信息b) 查询每个雇员的地址和电话c) 查询EmployeeID为000001的雇员的地址和电话。

d) 查询女雇员地址和电话,并用AS子句将结果中各列的标题分别指定为“地址”和“电话”。

e) 计算每个雇员的实际收入。

f) 找出所有姓王的雇员的部门号。

思考:找出所有地址中含有“中山”的雇员的号码和部门号。

(Where Address like ‘%中山%’)3、练习多表连接查询和嵌套查询:a)查询每个雇员的情况及工资情况(工资=Income - Outcome)b)查询财务部工资在2200元以上的雇员姓名及工资情况c)查询研发部在1966年以前出生的雇员姓名及其工资详情d)查询人力资源部雇员的最高和最低工资e)将各雇员的情况按工资由低到高排列f)求各部门的雇员数g)找出所有在财务部和人力资源部工作的雇员的编号h)统计人力资源部工资在2500以上雇员的人数i)求财务部雇员的总人数j)求财务部雇员的平均工资k)查找比所有财务部的雇员工资都高的雇员的姓名l)查找财务部年龄不低于研发部所有雇员年龄的雇员的姓名m)查找在财务部工作的雇员的情况四、实验步骤SQL查询语句1、单击工具栏中的“新建查询”按钮,并在弹出的“连接到服务器”对话框中单击“连接”按钮,新建一个SQL脚本。

2、在SQL脚本中写数据查询语句执行;从表中查询数据:在查询分析器的查询窗口中输入SQL语句,如图所示。

点击按钮,执行该SQL语句,在查询窗口下部出现一个输出窗口,如图所示。

六、实习结果在HRM数据库中输入了数据用SQL语言进行了查询操作步骤:命令方式操作方法:实体完整性1.将“student”表的“sno”字段设为主键:当“student”表已存在则执行:alter table student add constraint pk_sno primary key (sno)当“student”表不存在则执行:Create table student(sno CHAR(5) primary key ,sname CHAR(10) NOT NULL,ssex CHAR(2),sage int,sdept CHAR(4))注:可用命令“drop table student”删除“student”表2. 添加一身份证号字段,设置其惟一性.(注: 操作前应删除表中的所有记录)Alter table student add id char(18) unique (id)3. 将“sc”表的“sno”和“cno”设置为主键:当“sc”表已存在则执行:alter table sc add constraint PK_SnoCno primary key (sno,cno)当“sc”表不存在则执行:Create table sc(sno CHAR(5),cno CHAR(2),grade INT NULL,constraint PK_SnoCno primary key (sno,cno))域完整性4. 将“ssex”字段设置为只能取“男”,“女”两值:当“student”表已存在则执行:alter table student add constraint CK_Sex check (ssex in ('男' ,'女'))当“student”表不存在则执行:Create table student(sno CHAR(5) primary key ,sname CHAR(10),ssex CHAR(2) check (ssex in ('男' ,'女')) ,sage int, sdept CHAR(4))5. 设置学号字段只能输入数字:alter table student add constraint CK_Sno_Format check (sno like '[0-9][0-9][0-9][0-9][0-9]')6. 设置身份证号的输入格式:alter table student add constraint CK_ID_Format check ((id like '[0-9][0-9][0-9][0-9][0-9][0-9][1-2][0-9][0-9][0-9][0-1][0-9][0-3][0-9][0-9][0-9][0-9]_') OR (id like '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-1][0-9][0-3][0-9][0-9][0-9][0-9]'))7. 设置18位身份证号的第7位到第10位为合法的年份(1900-2050)alter table student add constraint CK_ID_Format2 check (len(id)=18 and ( (convert(smallint,substring(id,7,4) )>=1900) and(convert(smallint,substring(id,7,4) )<=2050)) )6. 设置男生的年龄必须大于22, 女生的年龄必须大于20.Alter table student add constraint CK_age check (ssex='男' and sage>=22 or ssex='女' and sage>=20 )参照完整性9. 将“student”表和“sc”表中的“sno”字段设为参照:当“sc”表已存在则执行:alter table sc add constraint FP_sno foreign key (sno) references student(sno )当“sc”表不存在则执行:Create table sc(sno CHAR(5) constraint FP_snoforeign key references student(sno),cno CHAR(2),grade INT NULL,constraint PK_SnoCno primary key (sno,cno) )实习结果:(文字描述、绘图、截图)建立salary表的Income字段限定在0-9999之间。

相关文档
最新文档