数据库总结

承德石油高等专科学校

计算机与信息工程系

岗前实训总结报告

实训方向或岗位: 软件工程师

实训地点或单位: 文理楼B518

所 属 班 级: 软件0901

学 号: 29

姓 名: 刘志聪

指 导 教 师: 苏建华

实 训 时 间:20xx.10.10-20xx.10.25

二0 一 一年x月廿五日

一、实训综述

1.实训地点:文理楼B518

2.实训性质、目的及意义

实训性质:本次数据库培训是由承德石油高等专科学校计算机与信息工程系为了提高应届毕业生就业竞争力,巩固学生所学的课本知识使所学知识得以应用而组织开办的非营利性的岗前培训培训。

实训目的:这次岗前实训是为了我们更好的掌握和应用J2EE软件开发的基础知识,熟悉软件开发人员所应具备的基本素质;还可以建立人才归属感的信息,如果我们希望自己能尽快成为工作突出的软件开发团队成员,那么其他成员就需尽力帮助新员工融入团队,让他感到自己深受大家欢迎。提高学生的团队意识,从而更加增强了学生在以后就业激烈竞争中站稳脚步。

实训意义:此次培训是通过学生自主选择感兴趣的专业,对于加强学生的学习能力以及处理问题的能力都有很大的提高,对于我们以后就业也是有很大的帮助的。

二、实训内容

1.网络数据库

数据和资源共享这两种方式结合在一起即成为今天广泛使用的网络数据库,它以后台数据库为基础,加上一定的前台程序,通过浏览器完成数据存储、查询等操作的系统。网络数据库(Network Database)其含义有三个:①在网络上运行的数据库。②网络上包含其他用户地址的数据库。③信息管理中,数据记录可以以多种方式相互关联的一种数据库。数据库是按一定的结构和规则组织起来的相关数据的集合。是综合各用户数据形成的数据集合,是存放数据的仓库。网络就是用通讯设备和线路,将处在不同地方和空间位置、操作相对独立的多个计算机连接起来,再配置一定的系统和应用软件,在原本独立的计算机之间实现软硬件资源共享和信息传递,那么这个系统就成为计算机网络了。数据库技术目前是计算机处理与存储数据的最有效、最成功的技术。计算机网络的特点则是资源共享。

数据+资源共享这两种技术结合在一起即成为在今天广泛应用的网络数据库(也叫web数据库)。网络数据库定义:以后台数据库为基础的,加上一定的前台程序,通过浏览器完成数据存储、查询等操作的系统。这个概念看上去很抽象,我们可以把它说得通俗一点:简单的说,一个网络数

据库就是用户利用浏览器作为输入接口,输入所需要的数据,浏览器将这些数据传送给网站,而网站再对这些数据进行处理,例如,将数据存入数据库,或者对数据库进行查询操作等,最后网站将操作结果传回给浏览器,通过浏览器将结果告知用户。

2.数据库编程

数据库编程是对数据库的创建、读写等一列的操作。数据库编程分为数据库客户端编程与数据库服务器端编程。数据库客户端编程主要使用ODBC API、ADO、ADO.NET、OCI、OTL等方法;数据库服务端编程主要使用OLE DB等方法。数据库编程需要掌握一些访问数据库技术方法,还需要注意怎么设计高效的数据库、数据库管理与运行的优化、数据库语句的优化。

访问数据库的技术方法:数据库编程分为数据库客户端编程与数据库服务器端编程。数据库客户端编程主要使用ODBC API、ADO、ADO.NET、OCI、OTL等方法;数据库服务端编程主要使用OLE DB等方法。

数据库编程分为数据库客户端编程与数据库服务器端编程。数据库客户端编程主要使用ODBC API、ADO、ADO.NET、OCI、OTL等方法;数据库服务端编程主要使用OLE DB等方法。

DBMS处理查询计划的过程是这样的:1、查询语句的词法、语法检查;

2、将语句提交给DBMS的查询优化器;3、优化器做代数优化和存取路径的优化;4、由预编译模块生成查询规划;5、然后在合适的时间提交给系统处理执行;6、最后将执行结果返回给用户其次,看一下SQL SERVER的数据存放的结构:一个页面的大小为8K(8060)字节,8个页面为一个盘区,按照B树存放。

三、实训体会

1.收获

SQL (结构化查询语言)是用于执行查询的语法。但是 SQL 语言也包含用于更新、插入和删除记录的语法。

查询和更新指令构成了 SQL 的 DML 部分:

SELECT - 从数据库表中获取数据

UPDATE - 更新数据库表中的数据

DELETE - 从数据库表中删除数据

INSERT INTO - 向数据库表中插入数据

SQL 的数据定义语言 (DDL) 部分使我们有能力创建或删除表格。我们也可以定义索引(键),规定表之间的链接,以及施加表间的约束。

SQL 中最重要的 DDL 语句:

CREATE DATABASE - 创建新数据库

ALTER DATABASE - 修改数据库

CREATE TABLE - 创建新表

ALTER TABLE - 变更(改变)数据库表

DROP TABLE - 删除表

CREATE INDEX - 创建索引(搜索键)

DROP INDEX - 删除索引

数据库有保持数据的独立性,所谓数据独立,是指存储在数据库中的数据独立于处理数据的所有应用程序而存在。也就是说,数据是客观实体的符号化标识,它就是一个客观存在,不会因为某一项应用的需要而改变它的结构,因此是独立于应用而存在着的客观实体。而某一项应用是处理数据获取信息的过程,也就是应用程序,它只能根据客观存在着的数据来设计所需要的数据处理方法,而不会去改变客观存在着的数据本身。数据库的传统定义是以一定的组织方式存储的一组相关数据的集合,主要表现为数据表的集合。

根据标准,SQL语句按其功能的不同可以分为以下6大类:

数据定义语句(Data-Definition Language,DDL);

数据操作语句(Data-Manipulation LanguageSQL Server20xx 功能,DML); 操作管理语句(Transaction-Management Language,TML);

数据控制语句(Data-Control Language,DCL);

数据查询语句(Data-Query Language,DQL);

游标控制语句(Cursor-Control Language,CCL)。

2.不足

1)学习的方式方法不够得当,在学习计划的编排和学习的轻重缓急的把握上不够到位,导致学习进行困难,延误一些重要学习的开展时机;

2)学习中不能正视问题和困难,在学习遇到困难时存在逃避、回避问题的现象,对学习中存在的问题不能够及时跟进、解决,导致学习停滞;

3)在与人沟通中不能很好的把握交流、沟通的技巧,与人沟通粗糙并且很多时候把握不住沟通的重点,甚至出现在沟通时遗漏学习重点导致重复沟通的现象,导致与其他同学的沟通配合学习出现困难;

4)学习中存在只说不做的现象,很多学习只是停留在口头上,没有落实到实际学习中去,存在执行力低下现象;

3.对实训的建议

实训老师应该加强学生的时间观念;作为学生更应该抓紧时间,在有效的时间内保质保量完成任务;其次应尽可能的调动学生的积极性,激发学生思维。

四、总结

在此次实训中,除了让我明白工作中需要能力,素质,知识之外,更重要的是学会了如何去完成一个任务,懂得了享受工作。当遇到问题,冷静,想办法一点一点的排除障碍,到最后获取成功,一种自信心就由然而生,这应该就是工作的乐趣。有时候不懂的就需要问别人了,虚心请教,从别人的身上真的能学到自己没有的东西,每一次的挫折都会使我更接近成功。还有学会了在工作中与人的合作与交流,同乐同累,合作互助,这是团体的精神,也是必须学习的东西。

经过之前的在校学习,对程序设计有了一定的认识与理解。在校期间,一直都是学习理论知识,没有机会去参与项目的开发。所以说实话,在实训之前,软件项目开发对我来说是比较抽象的,一个完整的项目要怎么分工以及完成该项目所要的步骤也不是很明确。 而经过这次实训,让我明白了一个完整项目的开发,必须由团队来分工合作,并在每个阶段中进行必要的总结与论证。

一个完整项目的开发它所要经历的阶段包括:远景范围规划和用例说明、项目结构和风险评估、业务功能说明书、详细设计说明书、代码实现、测试和安装包等等。一个项目的开发所需要的财力、人力都是很多的,如果没有一个好的远景规划,对以后的开发进度会有很大的影响,甚至会出现在预定时间内不能完成项目或者完成的项目跟原来预想的不一样。一份好的项目结构、业务功能和详细http://www.chddh.cn/wenzi/设计说明书对一个项目的开发有明确的指引作用,它可以使开发人员对这个项目所要实现的功能在总体上有比较明确的认识,还能减少在开发过程中出现不必要的麻烦。代码的实现是一个项目开发成功与否的关键,也就是说,前期作业都是为代码的实现所做的准备。

我深刻的认识到要成为一名优秀的软件开发人员不是一件容易的事情,不仅要有足够的干劲和热情,还要有扎实的编写代码基础,必须要有事先对文档进行可靠性报告,功能说明书,详细设计说明书等的编写和一些风险评估的编写的能力。

除了图书馆,最能让我感觉到身在大学的就是实训机房,在匆匆过去的两个月内,我往返于实训机房与宿舍之间,使我享受了一个充实的学习时期,让我感受到了大学的魅力,对自己充满信心,对大学充满信心,以积极的心态迎接明天挑战。

实训中要求有扎实的理论基本知识,操作起来才顺心应手,我这时才明白什么是“书到用时方恨少”。这就激发了学习的欲望。

“学以致用”,就是要把学来的知识能运用到实际操作当中,用实践来检验

知识的正确性。我想,这是实训的最根本目的。“纸上得来终觉浅,绝知此事要躬行!”,在短暂的实训过程中,让我深深感受到自己在实际运用中专业知识的匮乏。以前总以为自己学的还不错,一旦应用到实际就大不一样了,这时才真正领悟“学无止境”的含义。

短短的实训结束了,为我将来的就业打下了良好的基础,也提高了我的软件开发的水平,今后我将会更加努力的学习,不断提高自身素质,开拓创新,与时俱进,做一个优秀的软件开发工程师。

 

第二篇:数据库总结

(一)E-R图

1.学校中有若干系,每个系有若干班级和教研室,每个教研室有若干教员,其中有的教授和副教授每人各带若干研究生。每个班有若干学生,每个学生选修若干课程,每门课可有若干学生选修。用E-R图画出此学校的信息模型(概念模型)。

参考答案:

解:

系 1 教研室 拥有 班级 1 1 工作 属于 m 教员 n p 1 教学 学生 m 选修 指导 n 研究生 m n n 课程 学习

(二)简答

1.试述等值连接和自然连接的区别和联系。

答:连接运算符是“=”的连接运算称为等值连接。它是从关系R与S的广义笛卡尔积中选取A,B属性值相等的那些元组

自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉。

2.使用数据库系统有什么好处?

答:使用数据库系统的好处是由数据库管理系统的特点或优点决定的。使用数据库系统的好处很多,例如,可以大大提高应用开发的效率,方便用户的使用,减轻数据库系统管理人员维护的负担,等等。使用数据库系统可以大大提高应用开发的效率。因为在数据库系统中应用程序不必考虑数据的定义、存储和数据存取的具体路径,这些工作都由 DBMS 来完成。用一个通俗的比喻,使用了 DBMS 就如有了一个好参谋、好助手,许多具体的技术工作都由这个助手来完成。开发人员就可以专注于应用逻辑的设计,而不必为数据管理的许许多多复杂的细节操心。还有,当应用逻辑改变,数据的逻辑结构也需要改变时,由于数据库系统提供了数据与程序之间的独立性,数据逻辑结构的改变是 DBA 的责任,开发人员不必修改应用程序,或者只需要修改很少的应用程序,从而既简化了应用程序的编制,又大大减少了应用程序的维护和修改。使用数据库系统可以减轻数据库系统管理人员维护系统的负担。因为 DBMS 在数据库建立、运用和维护时对数据库进行统一的管理和控制,包括数据的完整性、安全性、多用户并发控制、故障恢复等,都由 DBMS 执行。总之,使用数据库系统的优点是很多的,既便于数据的集中管理,控制数据冗余,提高数据的利用率和一致性,又有利于应用程序的开发和维护。读者可以在自己今后的工作中结合具体应用,认真加以体会和总结。

3.试述数据库系统的组成。

答:数据库系统一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。

4.简述数据库设计的基本步骤。

答:需求分析,概念结构设计,逻辑结构设计,物理结构设计,数据库实施,数据库运行和维护。

5.试述数据模型的概念,数据模型的作用和数据模型的3个要素。

答:数据模型是数据库中用来对现实世界进行抽象的工具,是数据库中用于提供信息表示和操作手段的形式构架。一般地讲,数据模型是严格定义的概念的集合。这些概念精确描述了系统的静态特性、动态特性和完整性约束条件。因此数据模型通常由数据结构、数据操作和完整性约束三部分组成。

6.什么叫数据与程序的物理独立性?什么叫数据与程序的逻辑独立性?为什么数据库系统具有数据与程序的独立性?

答:数据与程序的逻辑独立性:当模式改变时(例如增加新的关系、新的属性、改变属性的数据类型等),由数据库管理员对各个外模式/模式的映像做相应改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。数据与程序的物理独立性:当数据库的存储结构改变了,由数据库管理员对模式/内模式映像做相应改变,可以使模式保持不变,从而应用程序也不必改变,保证了数据与程序的物理独立性,简称数据的物理独立性。数据库管理系统在三级模式之间提供的两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。

7.简述视图的作用。

答:视图能够简化用户的操作,视图是用户能以多种角度看待同一数据,视图对重构数据库提供了一定程度的逻辑独立性,视图能够对机密数据提供安全保护,适当的利用视图可以更清晰的表达查询。

(三)数据查询

根据给出的测试要求书写相应查询语句完成练习:

Student (学号,姓名,性别,年龄 ,所在系 )

Course(课程号,课程名,学分)

SC(学号,课程号,成绩 )

(注:三个表必须全部先建立起来,数据内容自己确定)

1.建立学生关系表Student,主鍵为学号。

create table Student

(学号 char(9) primary key,

姓名 char(20) unique,

性别 char(2),

年龄 Smallint,

所在系 char(20));

2.查询所有课程的课程号、课程名。

SELECT 课程号,课程名

FROM Course;

3.查询信息系年龄在18岁以上的学生。

SELECT *

FROM Student

WHERE 所在系='IS'AND年龄>18;

4.求各门课程的平均分。

SELECT AVG(成绩)

FROM SC

GROUP BY 课程号;

5.查询所有名字中最后一个汉字为’强’的学生的学号、姓名、性别和所在系。 SELECT 学号,姓名,性别,所在系

FROM Student

WHERE 姓名 LIKE'%强';

6.求各个学生的学号及选课门数。

SELECT 学号,COUNT(课程号)

FROM SC

GROUP BY 学号

7.查询选修8号课程且成绩小于60分的所有学生的学号、姓名、课程名、成绩。

SELECT Student.学号,姓名,课程名,成绩

FROM Student,Course,SC

WHERE Student.学号=SC.学号 AND SC.课程号=Course.课程号 AND SC.课程号='8'AND SC.成绩<60;

8.查询性别与学号为5的学生的相同的学生的学号、姓名、性别和所在系。(用嵌套查询)

SELECT 学号,姓名,性别,所在系

FROM Student

WHERE 性别 IN

(SELECT 性别

FROM Student

WHERE 学号='5');

9.将所有学生的年龄增加1岁。

UPDATE Student

SET年龄=年龄+1;

10.建立女学生的视图,视图名为SEX_S,包括学号、姓名、年龄三个属性。 CREATE VIEW SEX_S

AS

SELECT 学号,姓名,年龄

FROM Student

WHERE 性别='女';

相关推荐