sqlserver实训心得_sqlserver实训体会
SQL Server是什么?SQL Server 是Microsoft 公司推出的关系型数据库管理系统。下面是店铺带来的SQL Server实训心得,仅供参考。
sql server 实训心得篇1
为期一周的实训已经结束,从这一周中,有了很多的感悟。从学到和掌握到的东西来说,在书本上学到的东西非常不牢固,然而实训真的让我受益匪浅!实训第一天到教室时,看到老师给我们讲试训的内容与要求,然后告诉我们一些要完成的任务与作业,然后根据试训的内容与要求授课,让我们从实践中去体会所学的知识。说实话,对于SQL Server 数据库,我所学到的知识很不牢固,当时在课堂上听课所记住的也并不多,所以在试训开始时,真的不知道该干些什么?有一种“何去何从”的感觉!但随着老师的教课和讲解,以及和同学的讨论,再结合自己所知道的知识和老师所发放下的课程内容,根据这些实际的情况,我对自己将要做的事也有了兴趣和信心。所以在接下来的时间中,我们在老师的帮助下开始了数据库相关的实训。
在这次的google订餐系统的设计过程中,我们根据该google订餐系统的功能,将其分解三大部分来完成,第一部分就是建立数据库和表,并给其添加约束;第二是角的管理,分为管理员,订餐用户和餐馆;第三就是用编程语言建立管理菜单。所以 试训的内容是从数据库和数据表的创建和修改开始的,表是建立关系数据库的基本结构,用来存储数据具有已定义的属性,在表的操作过程中,有查看表属性,有查看表信息,修改表中数据,删除表中的数据以及修改表与删除表的操作。
我们以SQL Server数据库为基础,建立一个google订餐系统的数据库管理体系,并将数据库与程序连接,用编程语言建立数据库管理菜单。老师给我们讲了库和表的创建方法,以及约束的内心及其语法结构,让我们知道了不同约束的功能和使用的环境,还给我们说了标识列的使用和作用。讲了数据库的操作,增删改查。使我们掌握了insert into,deleted from,update set,以及select*from语句的的相关知识和运用。其中还学到了分页查询以及多表查询。
从这次试训中让我们更明白了一些知识,表是数据库最重要的一个数据对象,表的创建好坏直接关系到数据库的成败,表的内容是越具体越好,但是也不能太繁琐,以后在实际运
用中使用多表,对表的规划和理解就会越深刻。通过这次试训,让我深刻的了解到自己的不足,要想对进行数据库更深的学习,自己得要多看有关的课外书籍,并多做练习,不懂得要多问同学和请教老师,以解决自己遇到的难题,知道更多的知识。实训不仅是让我们在实践中对理论知识的验证,也让我们知道我们多学的知识在社会上的运用,把所学知识和企业商业接轨。
这次实训,不仅让我们学到了许多有关数据库的知识,老师也给我们讲了很多社会现状和就业情况,让我们不同的角度了解这个专业的就业趋势。让我们在今后的学习中更有动力的充实自己,曾加自己的知识面和锻炼自己各方面能力。、
sql server 实训心得篇2
最近有幸参加了SQL Server2008 R2的学习,有几点自己感觉比较实用的知识点以及技巧,和大家分享一下。
1,备份时勾选checksum选项。
数据库备份时偶尔会产生损坏页,而且在访问到损坏页之前往往不容易被我们发现。因此
备份后首先应该记得做的一件事就是验证一下,在早期版本的SQL Server中我们可以用如下命令进行检测:
dbcc checkdb 数据库名
在SQL server2005以后的版本中备份为我们提供了checksum选项,备份时同时进行检测,保证数据的正确性和完整性。
2.时间类型
提到时间类型,我们常用的就是datetime类型,当计算时间间隔的时候有两种常用方法:
①采用>=datetime1 and <= datetime2+' 24:00:00',这种方式问题倒是不太大;
②采用 convert(datetime1)方式转换为日期,然后进行比较。这种方式的弊端在于会导致索引无效。解决方案是采用计算列,即,添加一个列为convert(colname),然后在新列上建索引。这样就可以避免修改程序来挽回索引了。
在SQL Server2008中,为了解决这些问题,有了更细的时间类型:date、time、datetime2sqlserver备份表语句
(精度更高)、datetimeoffset(带时区)。
3.其他备份选项:
①备份压缩:在备份的同时对数据进行压缩,当数据量较大的时候可以为企业节省服务器资源。
②碎片处理:对于数据库页进行碎片整理,提高性能。
③索引视图:一般的视图中是没有数据的,是一张虚表。但是索引视图中是包含数据的,这样可以提高检索性能,当然也会浪费了部分空间。是典型的以空间换时间做法。
4.稀疏列:
当列为变长类型时null值不消耗空间,当为定长类型时null值消耗空间。这种做法实际上抛弃了范式规则,来提高读取速度。不过一般建议当该列null值大于70%时才定义为稀疏列,否则所占据的空间反而更大。
5.页压缩、行压缩
SQL Server2008提供了压缩功能来节省空间,其中行压缩针对定长数据,页压缩包括行压缩,且重复值只存一次,其他的只存物理指针。
6.DAC
主要用来生成脚本,优点是可以包含表之间的依赖关系、结构信息等,但是不包括实际数据。
7.在虚拟机上架构SQL Server要记得打开Named Pipes协议。否则不能正常运行。
8.文件组:
建立数据库数据表之后将文件进行分组、规划。一般企业经常将整个数据库放在一个文件中,这是不合理的。或者有些企业建立多个数据库来分开管理,但是当服务器做镜像或者迁移时会存在建立索引的麻烦。所以建议使用文件组管理。
9.开发人员规范
①写INSERT以及SELECT 要写明具体字段名称,否则一旦表字段进行了调整,就会带来
修改客户端程序的麻烦。
②存储过程名称不要以sp_开头,而要以usp_开头。因为sp_开头的存储过程会被当做系统自带内容,降低性能。
sql server 实训心得篇3
1、尽可能少用临时表
select * from
(select ROW_NUMBER()over(order by AreaName)as rowNum, AreaName,
AreaTotalPoints=(select SUM(Points) from #tempPoints where JurisdictionalUnitArea in(select AreaID from GetSubAreas(AreaID)))
from Areas where ParentAreaID=@AreaID)as t
where rowNum>(@pageindex-1)*@pagesize and rowNum<=@pageindex*@pagesize
我原来是这样写的:
select ROW_NUMBER()over(order by AreaName)as rowNum, AreaName,
AreaTotalPoints=(select SUM(Points) from #tempPoints where JurisdictionalUnitArea in(select AreaID from GetSubAreas(AreaID)))
into #temp from Areas where ParentAreaID=@AreaID
select * from #temp where rowNum>(@pageindex-1)*@pagesize and rowNum<=@pageindex*@pagesize
drop table #temp
测试后发现不用临时表查询时间大大减少了。
小结:有时我们为了语句的逻辑清晰而使用临时表存储数据,但这样会影响sql语句执行效率,特别在数据量大的时候,这种差异尤为明显。所以要权衡选择。一般在数据量小时,使用它影响不大。
2、尽可能少选取列
select tempUser.JurisdictionalUnitArea,SUM(pr.Points)as yearPoints into #tempUser2
from #tempUser tempUser inner join PointRecords pr on tempUser.UserID=pr.EffectUserID。。。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论