学习Access数据库的报告
一、前言
一开始我对access一窍不通,甚至不知道它是干什么的,后来经过网上资料的查阅对它略有了解。microsoft office access是由微软发布的关联式数据库管理系统。它结合了 microsoft jet database engine 和 图形用户界面两项特点,是一种关系数据库工具。它在很多地方得到广泛使用,例如小型企业,大公司的部门,和喜爱编程的开发人员专门利用它来制作处理数据的桌面系统。它也常被用来开发简单的web应用程序.
但是它也有优点和缺点,如下:
优点:
(1)存储方式单一
access管理的对象有表、查询、窗体、报表、页、宏和模块,以上对象都存放在后缀为(.mdb)的数据库文件种,便于用户的操作和管理。
(2)面向对象
access是一个面向对象的开发工具。它将一个应用系统当作是由一系列对象组成的,通过对象的方法、属性完成数据库的操作和管理,极大地简化了开发工作。同时,这种基于面
向对象的开发方式,使得开发应用程序更为简便。
(3)界面友好、易操作
(4) access是一个可视化工具,用户想要生成对象并应用,只要使用鼠标进行拖放即可,非常直观方便。系统还提供了表生成器、查询生成器、报表设计器以及数据库向导、表向导、
查询向导、窗体向导、报表向导等工具,使得操作简便,容易使用和掌握。
(5)access可以在一个数据表中嵌入位图、声音、excel表格、word文档,还可以建立动态的数据库报表和窗体等。access还可以将程序应用于网络,并与网络上的动态数据相联接,轻松生成网页。
缺点:
access是小型数据库,既然是小型就有它根本的局限性:access数据库不支持并发处理、数据库易被下载存在安全隐患、数据存储量相对较小等。而且在以下几种情况下数据库基本上会吃不消:
(1)数据库过大,一般access数据库达到50m左右的时候性能会急剧下降。
(2)网站访问频繁,经常达到100人左右的在线。
(3)记录数过多,一般记录数达到10万条左右的时候性能就会急剧下降。
二、对一些基本知识的体会
1 字段数据类型
学习了access的数据类型,发现计算机软件对数据的处理和管理是很严格的。access数据表里面的数据字段,是规定好字段类型的,比如说文本型的、数值型的、是否型的或日期型的?一旦设置好了字段的数据类型,那么,在该字段中的所有单元格是不能随便输入内容的,如果输入的内容不符合字段数据类型,是输不进去的。比如,日期型的数据,你输入汉字,是不能输入的,而只能输入诸如:2009-9-29这样格式的数据。这就是字段的数据类型的约束性,可以说,是一种强制性;显然,约束性带来了数据管理的方便,解决了数据的分类与管理上的方便。
2 数据的查询
access里面的查询,不会对源数据表的数据造成影响。这是很好的一种分离模式;我们可以根据自己的查询,设置或构造简单的或复杂的查询条件,之后运用查询,就可以查询到所需要的数据的,但是,查询到的数据,对源数据表,即原始数据,不会造成任何的影响,这就带来了如下的方便:即能找到所需数据,同时,又保留了原始数据的完整性。 另外,查询对象,还支持sql语言的使用,这就从根本上解决了数据查询的难度,提高了灵活性和使用性。
3 窗体的使用
原来我对软件界面很好奇,不知道这样的界面,是如何制作出来的。学习了access之后,才知道,这种界面,其实就是一种窗体。窗体对象,可以这样简单的来概述:用来显示数据表数据的有别于查询的一种界面。窗体对象中的用来显示数据的控件,我们可以灵活的自行
设计,想拖哪个表的哪个字段到窗体里面,窗体就显示哪种数据,非常方便。
4 关系
access里面的数据表与数据表之间,有着关系这个概念。关系,其实就是两表或多表,相互之间存在的一种关联或依赖。
比如说,学生信息表,有id和姓名字段;而学生成绩表,有id、学科、语文、数学、英语、信息技术等学科的成绩;后者保存学生每年每学期不同学科的成绩。这样一来,在学生成绩表里面对应于一个同学的记录,就有多条;而在学生信息表中,仅有一条记录。那么,我们要知道该同学的姓名,同时还要查询与之相对应的成绩,只有通过两表的操作,才能找到数据。若要表明某个id的号码所对应的成绩是属于哪个学生,就要使用到表间关系。通过将学生信息表里面的id和学生成绩表里面的id,建立起关系,或者称为以此来穿针引线,那么两表就存在关联了。这样就可以根据信息表里面的id,以它作为参照对象去寻找学生成绩表里面id号相同的,就为该学生的成绩记录了。
三、具体使用中的一个问题
在学习access的过程中,我发现使用高级筛选和查询这两个功能,都可以按照所选择的字段,设置条件或准则,查找满足一定条件的数据。但是两者有什么区别呢?后来上网搜索
了一下,然后进行实践,得出了答案。
①根本的区别
查询是access数据库中的一个对象,可以进行保存,永久使用;而高级筛选,仅仅是用来对数据库表数据进行临时的查找,一旦关闭了,筛选就已经不存在了。
②对数据查找的区别
高级筛选,只存在字段、排序、条件、或这样的选项的设置,无论条件如何复杂或再怎么简单,查找出来的数据,都包含数据表中的所有字段。而查询对象,除了上述的选项可设置之外,还有表和显示两个选项可以设置;这就说明了查询对象可以对多个表同时进行查询,查询出多个表中满足条件的记录,在这里,可以称为,查询能对多表进行综合的查询,而高级筛选只能对一个表的数据进行查找。此外,查询中还有“显示”这样的选项,当我们选择一个字段之后,可以将该字段设置为显示或不显示,这样,在查询出来的数据的浏览状态,就可以根据需要,显示部分字段而忽略部分字段。 另外,筛选只有在数据表打开的情况下才能使用;而查询,由于是一个数据库中的对象,需要新建,同时还需要选择数据源,即数据表。
③两者的关联
高级筛选的操作方法,和查询,在使用上类似;但是,由于前者仅有临时功能,而不具备永久保存的功能,因此,不能不说是一种遗憾;但是,我们也可以将设置好条件的高级筛选,保存成为查询,操作方法就是:“文件”→“另存为查询”;这样,就可以将筛选保存成为查询对象了。
④两者对数据库表的影响
查询对数据表的原始状态没有任何影响;查询的结果及保存,不会对数据表里面的数据字段或记录排序有任何影响。而高级筛选则会对数据库表原始数据的排序有所影响;如果在筛选中使用了排序,并且,在关闭筛选的时候,选择了“是”,那么,筛选出来的数据的排序,将会改变数据库表原始数据的排序。
四、学习方法
总结一下学习access的方法,主要有以下几点:
1学习计划要明确,根据自己的实际出发。
2 从应用出发。学习的目的就是为了使用,应把学到的每一点应用于实际操作。
3要多了解相关信息,多思考,多提问题,多问几个为什么,要学以致用。
4利用网上资料的指导、帮助。
github地址:https://github.com/yeershao/hello-world/blob/master/学习报告