2011级大二sql实训报告
- 格式:doc
- 大小:74.00 KB
- 文档页数:8
SQL实习总结四篇SQL实习总结四篇SQL实习总结篇一:为期一周的实训已经结束,从这一周中,有了许多的感悟。
从学到和把握到的东西来说,在书本上学到的东西特别不坚固,然而实训真的让我受益匪浅!实训第一天到教室时,看到老师给我们讲试训的内容与要求,然后告知我们一些要完成的任务与作业,然后依据试训的内容与要求授课,让我们从实践中去体会所学的学问。
说实话,对于SQL Server 数据库,我所学到的学问很不坚固,当时在课堂上听课所记住的也并不多,所以在试训开头时,真的不知道该干些什么?有一种“何去何从”的感觉!但随着老师的教课和讲解,以及和同学的争论,再结合自己所知道的学问和老师所发放下的课程内容,依据这些实际的状况,我对自己将要做的事也有了爱好和信念。
所以在接下来的时间中,我们在老师的关心下开头了数据库相关的实训。
在这次的google订餐系统的设计过程中,我们依据该google 订餐系统的功能,将其分解三大部分来完成,第一部分就是建立数据库和表,并给其添加约束;其次是角色的管理,分为管理员,订餐用户和餐馆;第三就是用编程语言建立管理菜单。
所以试训的内容是从数据库和数据表的创建和修改开头的,表是建立关系数据库的基本结构,用来存储数据具有已定义的属性,在表的操作过程中,有查看表属性,有查看表信息,修改表中数据,删除表中的数据以及修改表与删除表的操作。
我们以SQL Server数据库为基础,建立一个google 订餐系统的数据库管理体系,并将数据库与程序连接,用编程语言建立数据库管理菜单。
老师给我们讲了库和表的创建方法,以及约束的内心及其语法结构,让我们知道了不同约束的功能和使用的环境,还给我们说了标识列的使用和作用。
讲了数据库的操作,增删改查。
使我们把握了into,d from,set,以及select*from语句的的相关学问和运用。
其中还学到了分页查询以及多表查询。
从这次试训中让我们更明白了一些学问,表是数据库最重要的一个数据对象,表的创建好坏直接关系到数据库的成败,表的内容是越详细越好,但是也不能太繁琐,以后在实际运用中使用多表,对表的规划和理解就会越深刻。
sql数据库实训报告1.引言SQL(Structured Query Language)是一种用于管理关系数据库系统的计算机编程语言。
在日常生活和工作中,我们难免会遇到需要存储和管理大量数据的情况,而SQL数据库正是解决这类问题的有效工具。
在本次实训中,我们学习了SQL数据库的基本概念、语法和操作,以及如何利用SQL数据库进行数据的增删改查等操作。
本报告将总结实训过程中的所学内容。
2.实训目标与环境搭建实训的目标是让学员了解并熟悉SQL数据库的基本操作,并能够运用所学知识完成实际的数据管理和查询任务。
为了实现这一目标,我们需要先行搭建实训环境,包括安装和配置数据库软件等。
3.数据库设计与建表在使用SQL数据库进行数据管理之前,我们首先需要进行数据库设计和建表操作。
数据库设计是根据实际业务需求,确定数据库的表结构、字段类型、主外键关系等,以便于更好地管理和查询数据。
在建表过程中,我们需要考虑到数据的一致性、完整性和安全性等方面的问题。
4.数据导入与查询数据导入是将已有的数据导入到SQL数据库中的过程。
在实际工作中,我们通常会遇到需要存储和管理大量已有数据的情况,而不是从零开始创建数据。
通过数据导入操作,我们可以将Excel表格、CSV文件等数据源快速导入到数据库中,并进行相应的查询操作。
5.数据的增删改查数据的增删改查是SQL数据库最常用的操作之一。
通过SQL 语句,我们可以实现数据的插入、更新、删除和查询等功能。
通过实际的案例演练,我们可以了解到不同类型的SQL语句及其使用方法,以及如何通过这些语句实现对数据的操作。
6.索引和优化在实际的数据库管理中,如果数据量庞大,查询效率就会成为一个较大的问题。
为此,我们需要对数据库进行索引和优化操作,以提升查询效率。
通过在适当的字段上添加索引,可以加快数据的查找速度;通过调整数据库的参数设置和优化查询语句,可以提高数据库的整体性能。
7.备份和恢复数据库的备份和恢复是非常重要的工作,尤其在面临数据丢失或数据库受损等情况时。
《数据库原理及应用》实验报告sql语句部分班级: 11-37-06 学号:姓名:总成绩:实验一熟悉sql server,数据定义实验实验一成绩:一、实验目的1、利用查询分析器创建数据库2、利用查询分析器用sql语言定义基本表、索引并进行相关操作二、实验步骤及内容在以下实验中,使用学生-课程数据库,它描述了学生的基本信息、课程的基本信息及学生选修课程的信息。
1.创建学生课程数据库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; 5.将以上创建表s、c、sc的sql命令以 .sql文件的形式保存在磁盘上。
(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姓名列的唯一值约束。
数据库实训课程学习总结实践SQL查询与数据库管理在数据库实训课程的学习过程中,我深入了解了SQL查询与数据库管理的基本原理和操作技巧。
通过实践操作,我逐渐掌握了SQL语言的基本语法和常用命令,熟悉了数据库的创建、备份与恢复、索引优化等管理技术。
本文将对我在数据库实训课程中的学习经历与心得进行总结,提供给同学们参考与交流。
1. 实践SQL查询在数据库实训课程中,我首先学习了SQL语言的基本语法和常用命令,了解了如何使用SELECT、INSERT、UPDATE和DELETE等命令进行数据的查询、插入、更新和删除。
在实践过程中,我发现了一些查询优化的技巧。
首先,合理选择WHERE子句中的条件和逻辑运算符。
我通过分析查询需求,尽量减少WHERE子句中的条件数量,避免不必要的逻辑运算符。
此外,我还学会了使用索引来加速查询操作,提高查询性能。
其次,合理使用JOIN操作连接多个数据表。
在实践过程中,我遇到了需要连接两个或多个数据表的情况。
通过学习JOIN操作,我可以根据不同的连接关系选择适合的JOIN类型,并且编写出高效的JOIN查询语句。
最后,学会使用子查询进行复杂查询。
子查询是SQL语言的一个重要特性,通过嵌套查询语句,我可以从多个数据表中获取需要的数据,并且可以进行更复杂的条件筛选和排序。
通过实践操作,我逐渐掌握了子查询的使用技巧,提升了查询的灵活性。
2. 数据库管理操作除了SQL查询,数据库实训课程还涉及到了数据库的管理操作。
在实践过程中,我学习了如何创建数据库、备份和恢复数据库、以及优化数据库的性能。
首先,我学会了使用CREATE DATABASE语句创建数据库。
通过指定数据库的名称、字符集和校对规则等参数,我可以在数据库管理系统中创建一个新的数据库。
其次,我了解了数据库备份和恢复的操作。
通过学习备份和恢复的基本原理和方法,我可以对数据库进行定期备份,以防止数据丢失。
同时,当数据库发生故障时,我也可以通过恢复操作将数据库恢复到正常状态。
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实训报告SQL Server 实训报告班级:姓名:学号:实训名称:SQL Server数据库应用技术实训题目:教学信息管理实训目的:通过本次实训,使学生了解开发数据库应用程序的过程;通过数据库设计,加深对数据库基础理论的理解并能灵活运用;掌握利用SQL Server 2000数据库管理系统创建、管理、维护数据库的基本方法及过程;培养开发数据库的设计思维。
实训内容:本人与郭晓峰主要负责‘教学信息管理’系统。
主要包括数据的导入和导出、数据库结构的分析与建立、表关系的添加、查询、外关键字的约束、检查约束、默认值、试图、表存储过程和触发器的学习,以及在表的操作过程中,有查看表信息、查看表属性、修改表中的数据、删除表中的数据及修改表和删除表的操作。
本人主要负责数据的导入,数据库的建立,查询数据库的建立:包括数据附加分离数据导入:导入EXCEL表中各个数据(学生信息表班机信息表学生成绩表授课表教师表课程信息表)查询:查询学生记录数查询成绩平均分上课人数学校人员低于平均分者学生信息低于平均分者自定义函数一总体设计思路当看到这个题目我想到一个完整的教学信息管理应包括:学生信息表、班级信息表、课程信息表、学生成绩表、教师表、授课表等。
在整个系统中有两个实体:学生和老师。
二表结构我的系统有六张表组成:学生信息表列名数据类型宽度允许空值说明学号char4否主键姓名char10是性别char2是默认值:男班级号char8是专业char20是系别char20是联系电话char20是入学日期datetime8是备注char50是班级信息表列名数据类型宽度允许空值说明班级号Char8否主键、外键年级Char8是班主任Char8是教师号char8是课程信息表列名数据类型宽度允许空值说明课程号Char8否主键课程名称Char10是课程类型Char8是学分Char8是课程说明Char10是学生成绩表列名数据类型宽度允许空值说明学号Char8否主键班级号Char8是学期Char8是课程号Char8是课程名称Char8是成绩decimal8是教师表列名数据类型宽度允许空值说明教工号Char8否主键教师姓名Char8是性别Char8是职称Char8是授课表列名数据类型宽度允许空值说明教工号Char8否主键课程号char8是Excel表格主要如下:班级信息学生信息学生成绩教师表授课表课程信息:二数据库的建立:1在开始菜单中选择“程序——MicrosoftSqlServer——企业管理器”选型,就启动了企业管理器,打开工具窗口如图所示2在企业管理器树状目录窗口中展开一个服务器组,选定服务器。
SQL实训总结(共5篇)第一篇:SQL实训总结SQL实训总结为期五天的实习,很快就过去了,让我重新了解了丰富多彩的编程生活,感受到了学习的快乐,也感觉到了许许多多的专业问题,亲身体验了窗体与工程制成之后的喜悦之情。
在实训期间,我学到了许多东西,遇到了一些困难,也看到了自己本身存在着许多问题。
这次实训给我带来了危机感和压迫力,让人警醒,更加清楚自己的水平和重量,心里总有种被大石头压着的无力感,但是又凭着一种坚持,奋力的抗争着。
所以也得出个结论,那就是——我得好好好好的努力啊。
这已经是我们的第四次实训了,在我进入大学的这两年多里,或多或少的学到了一些专业的东西。
我知道自己很爱玩,于是为了能够提高锻炼自己,我把本次为期一周的VB、SQL制作实训看作是一个通向社会,通向我的工作岗位的“理论与实践相结合的桥梁”。
在本周的实训和学习,我一直知道此次实训的目的,也知道我自己的目的,同时也清楚目前自己的不足——缺乏相应的知识与经验,对所学的专业知识不能够很好地运用于实践操作,所以我是认真的对待这次实训的。
在这次实训中,我也有许多收获。
首先,我体会到了作为一个VB 设计师,不会将VB与SQL结合的痛苦和尴尬;然后,我发现了很多以前都不曾注意到的细节;其次,在实训中,我对作为一名编程者应该学习的内容做了一个更深层次的理解;最后,我还从这次实训中看到了自己很他人的差距,危机意识增强,为了不使这个差距拉大,甚至赶上前面的同学,我会努力的。
本次实训,给我最深刻、最刻骨铭心的感觉就是累,不仅每天白天要一整天对着一台机器,而且到了晚上还要对着这台机器来一个法式的“秉烛夜谈”,可惜的是没有浪漫的事前发生,我也只是对牛谈情而已,不似李白的“举杯邀明月,对影成三人”啊,我就和一部会说话的机器唧唧歪歪。
我时常想,以后的日子里,如果我成为了一名编程师也会是这样吗?好像很无聊的样子啊。
好动的我一定坐不住吧。
可是,我也知道,为了衣食父母,为了生存,为了未来,现在我还没有任何的资格想这个问题,时间不对,而现在最最应该想的是——我要怎样成为一个顶级的编程师。
要求:
1.文件格式要求:
a. 将实验成果放入一个文件夹中,文件夹的内容包括:本实验报告、分离后的数
据库、如有查询代码(.sql文件)和其它文件也一并放入。
b. 文件夹以“学号姓名班级_S2”为文件名。
其中,S1表示这是实验1的报告,S
大写,以后的实验报告以类似方法编号顺延,注意:你的学号放在姓名前。
c. 注意:所有文件保存后关闭,然后再打包成RAR文件,以免提交的内容丢失或
打不开。
2.提交方式和时间:一周内完成,不得超过两周。
完成后将文件包发到我邮箱
bbwhs@。
3.报告格式和内容要求:
a. 内容和格式整齐。
大标题采用黑体四号字加粗,小标题采用小四号字加粗。
正
文采用五号宋体,单倍行距。
b. 贴图时请剪裁到适当大小,要保证打印时可以看清,但也不要太大以免“越界”。
c. 不要在报告中写与实验内容无关的话,内容要有条理、完整、并能突出重点,
要将遇到的主要问题说明。
4.主动查阅资料,坚持自己亲手完成实验,弄清每个步骤和相关原理。
sql数据库实训报告一、实训目的本次实训旨在让学生了解SQL语言,熟悉数据表的操作,掌握SQL数据库的基本使用及维护方法,并最终能够运用所学知识完成数据库的设计与实现。
二、实训过程1. 实验环境搭建本次实训所需的实验环境为:MySQL数据库。
首先需要在本地计算机上安装MySQL,并配置好环境变量。
2. 数据库设计在完成实验环境搭建后,接着需要进行数据库设计。
本次实训的数据库设计主要包括以下几个方面:(1)确定所需数据表及表中字段;(2)确定表与表之间的关系;(3)确定表中字段的类型及长度。
3. 数据库操作完成数据库设计后,需要通过SQL语言进行数据库的操作。
本次实训的数据库操作主要包括以下几个方面:(1)表的创建、修改、删除;(2)数据的插入、更新、删除;(3)基本查询,包括SELECT语句的使用及WHERE语句的使用。
4. 数据库维护SQL数据库的维护主要包括以下几个方面:(1)备份与恢复数据;(2)性能优化,包括索引优化、查询语句的优化等;(3)安全管理,包括用户管理,角色管理,权限管理等。
三、实训成果通过本次实训,我成功地完成了以下工作:(1)完成MySQL数据库的安装与配置;(2)完成数据库的设计,包括三个数据表的创建及表间关系的建立;(3)成功进行了数据库的基本操作,包括数据的插入、更新、删除等;(4)成功进行了基本查询,包括SELECT语句的使用及WHERE语句的使用;(5)对数据库进行了一些性能优化,包括索引优化、查询语句的优化等。
四、实训心得通过本次SQL数据库实训,我深刻地认识到SQL语言的重要性,掌握了SQL数据库的基本使用及维护方法,并在实践中不断地完善自己的实验能力。
在今后的工作中,我将继续加强对SQL语言的学习,并开展更为深入的数据库设计及开发工作。
2011级大二sql实训报告
郑州经贸职业学院
实验二:
实验三:
实验四:日期:2013.3.28
实验名称:数据库的创建及管理
实验目的:掌握数据库的创建及日常管理
实验内容:数据库的创建及管理
实验步骤:
一、创建数据库
1.使用SSMS创建名字为自己汉语名字的数据库,数据库主数据文件名为姓名_data,大小为3MB-5MB,增量为10%,事务日志文件为姓名_log,大小为2MB-10MB,增量为1MB;
2.使用T-SQL语句创建名字为Sale的数据库,数据库主数据逻辑文件名为Sale_Data,物理文件名为Sale_Data.mdf,大小为5MB-10MB,增量为1MB;事务日志逻辑文件名为Sale_log,物理文件为Sale_log.ldf,大小为8-20MB,增量是10%。
(保存到E盘)二、删除数据库
1.使用SSMS创建名字为Hello的数据库,并使用SSMS删除该数据库;
2.使用SSMS创建名字为“你好”的数据库,并使用T-SQL语句删除该数据库。
实验五:日期:2013.4.11
实验名称:数据库表的创建及管理
实验目的:掌握概念模型转换为数据模型的方法和表的创建
实验内容:数据库表的创建及管理
实验步骤:一、把图书借阅系统的E-R图转换为二维关系表,并进行规范化处理
二、把上述二维关系表在图书借阅数据库中实现
1.使用SSMS和T-SQL语句创建图书借阅系统数据库
2.分别使用SSMS和T-SQL语句创建如上二维关系表
要求自己分析数据类型,长度,是否为空
三、对每张表设置主键
实验六:日期:2013.4.18
实验名称:数据库表数据的操作
实验目的:1.掌握对数据库表中数据的插入方法
2.掌握对数据库表中数据的各种维护方法
实验内容:使用命令方式操作表数据
实验步骤:1.使用命令创建“学生管理”数据库
3.在学生管理数据库中创建班级表,课程表。
.向班级表中插入3行数据,分别为
(班级编码:20020007,系部编码:03,班级名称:03旅游管理),
(班级编码:20020008,系部编码:03,班级名称:04旅游管理),
(班级编码:20020009,系部编码:03,班级名称:05旅游管理),分别用三种不同的方法实现。
4.向课程表中任意添加一门课程的信息,方法不限。
5.使用select子句将class表中的数据插入到Newclass表中。
6.将course表中由”计算机应用工程系”开设的课程插入到Newcourse表中。
(使用select into)
7.将学号为00000020的学生的姓名改为庄严。
实验七:日期:2013.4.25
实验名称:数据完整性
实验目的:1.掌握数据完整性约束的内容
2.掌握各种约束的创建方法
3.掌握默认与规则的创建方法
实验内容1.使用命令方式创建数据完整性约束。
2.使用命令方式创建和使用规则及默认值。
实验步骤:附加XK数据库:
1.使用SQL语句为student表创建名为UK_Pwd的基于Pwd列的唯一约束:
2.使用SQL语句为stucou表创建名为DF_Stucou_State的Default约束,该约束使state列的值默认为“报名”。
3.使用T-SQL语句在Xk数据库中创建名为CreditRule的规则(大于等于1,小于等于5),并将其绑定到Course表的Credit列。
4.创建一个名为UnsureDefault的默认值,默认值为’ 待定’,然后绑定到表Course的列Teacher。
实验八:日期2013.5.4
实验名称:简单查询
实验目的:掌握基本的SELECT语句的使用方法
实验内容:使用Select语句进行简单查询
实验步骤:一:附加XK数据库;
二、对XK数据库表中的数据进行以下查询:
1. 从课程表中检索所有的信息;
2. 从学生表中检索所有学生的姓名和学号;
3. 检索课程表(Course)中的课程名称,教师,上课时间,要求用三种方式为列起别名,改成中文名称。
4. 从学生表中检索学生所在班的班级编码;
实验九:日期:2.13.5.9
实验名称:条件查询和查询子句
实验目的:掌握查询子句和SELECT的统计功能
实验内容:1.练习使用查询子句
2.练习使用SELECT统计功能进行查询的方法
实验步骤:一、附加XK数据库;
二、对XK数据库表中的数据进行查询:
1.从course表中检索报名人数介于21与27之间(包括21和27)的课程的信息。
2.检索报名人数与限选人数的差额(报名人数—限选人数)大于20的课程名、教师、报名人数与限选人数的差额。
3.检索姓刘,并且第二个字不是丽、志的学生姓名。
实验十:日期:2013.5.16
实验名称:高级查询
实验目的:Select查询语句的高级使用
实验内容:1.使用Select语句进行链接查询
2. 使用Select语句进行子查询
实验步骤:一、附加XK数据库;
二、对XK数据库表中的数据进行如下查询:
1. 检索系部信息以及系部所开设的课程的课程名、课程分类、教师、上课时间。
2. 检索学生的学号、姓名以及学生的选课的课程名称、课程号、教师情况,并消除相同列。
3. 检索报名人数多于20人或者小于15人的课程的信息以及系部信息,并消除相同列。
实验十一:日期:2013.5.23
实验名称:T-SQL语言基础
实验目的:1.掌握局部变量的使用方法
2.掌握常用的系统函数
3.掌握流程控制语句
实验内容:1.练习使用局部变量
2.练习使用系统函数
3.练习使用流程控制语句
实验步骤:附加XK数据库:
1.给出系统当前的日期和时间。
2.使用日期函数计算自己的年龄。
3.使用流控语句计算1+2+3+4+…+500=?
4.在XK数据库中显示班级编码、班级名称和系部名称(当系部编码为01时,显示系部名称为“计算机应用工程系”;当系部编码为02时,显示系部名称为“建筑工程系”;当系部编码为03时,显示系部名称为“旅游系”),要求:1.使用CASE语句;2.不使用CASE语句两种方法实现。
实验十二:日期:2013.5.30
实验名称:视图及其应用
实验目的:1.掌握创建视图的方法
2.掌握修改视图的方法
3.掌握如何利用视图进行数据查询
实验内容:1.练习使用图形界面和命令方式创建视图的方法
2.掌握修改视图的方法
3.使用视图进行数据查询
实验步骤:1. 创建视图v_Class,只显示Class表中系部编码为01的系部的班级信息。
2..创建视图v_StuCouSub,只显示StuCou表中的StuNo列和CouNo列。
实验十三:日期:2013.6.6
实验名称:索引及其应用
实验目的:1.掌握创建索引的方法
2.掌握删除索引的方法
3.掌握修改索引的方法
实验内容:1.练习使用图形界面和命令方式创建索引的方法
2.掌握修改索引的方法
3.使用删除索引的方法
实验步骤:1.使用存储过程sp_helpindex查看"student"表的索引情况。
2.使用T_SQL语句在CLASS表上创建名为IX_claname的非聚集索引,该索引基于classname列。
3.删除该索引。