第5章信息存储与管理

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
它的作用是将整型变量i和实型变量j的值按%d和 %6.2f的格式输出到fp指向的文件中,若i=3, j=4.5,则输出到磁盘文件上是以下 字符串 3,4.50. (5)fgets和fputs字符串读写函数(处理文本文件) fgets(str,n,fp); /* 从fp指向的文件输入n-1个字符,并把它放入数组str中,遇 EOF读入结束,字符串读入后在最后加一个‘\0’字符,返回str的首地址. */ fputs(“china”, fp); /*将字符串china 输出fp指向的文件中,但不输出字符 串结束符.*/
00110001 00110000
1
0
ASCII文件格式
00110000 0
00100111 二进制文件格式
00010000
00110000 0
00110000 0
补充知识:
标准C语言采用缓冲文件系统,系统自动为每一个正在使用的 文件开辟一个缓冲区,从内存向磁盘输出数据必先送到缓冲区,装满才 送到外存,反之,从磁盘向内存读入数据,是一次送一批至缓冲区,再 从缓冲区逐个将数据送到程序数据区。打开几个文件就有几个缓冲区。
指定的操作。即fp指向A1文件。
常用下面的方法打开: if ((fp=fopen (“file1”, “ r”))= =NULL) {printf(“cannot open this file \n” ) ;
exit(0); }
它通知编译系统 (1)须打开的文件 (2) 使用文件的方式 (3)让哪个指针变量指向被打开的文件。
(1)顺序文件
(2)索引文件
(3)多重链表文件
(4)倒排文件
(1)顺序文件
物理顺序与逻辑顺序一致的文件。它的有效存储区域 是连续的,结构紧凑、简单,但增删、检索不够方便。
一切存于顺序存储器的文件只能构成顺序文件,磁带 就是典型的顺厅存储器。对于顺序存储器上的文件存取第 i个记录,必须先存取前面的i-1个记录,新的记录要加在文 件的末尾。
三、文件的关闭
fclose ( )函数:使文件指针不指向该文件,并释放他所占的内存缓冲区和相应文 件类型结构体变量所占内存. 例如:fclose (fp);
/*fclose 函数带回一指针,成功则为0.非0表示关闭时有错误.*/
5.3数据库系统
数据库技术是在人工管理,文件管理技术上发展起来的 数据管理技术
第5章 信息存储与管理
在机械设计过程中需要处理大量的信息数据, 例如各种各样的标准个规范、实验曲线以及大量 图表等。这些数据存储在计算机中,通过计算机 来进行管理和处理。
信息在计算机中的存储与管理方式一般分为两种:
(1)文件系统; (2)数据库系统;
5.1基本概念
• 数据项:也称字段或数据元素。是描述事物的一个属 性的最小单位。
5.3.2 数据库系统的基本组成
数据库系统包括硬件和软件。 (1)硬件
有足够大的内存容量和高速的数据传输能力。 (2)软件
主要包括:操作系统,数据库管理系统本 身,高级语言以及编译系统,应用程序。
5.3.3 数据系统的体系结构
用DBMS中的DDL精确地定义上述模型称为模式
对应于不同层次的模型,也有三个相应的模式:
使用文件的方式如下: “r”:(只读)为输入打开一个文本文件(向计算机输入) “w”: (只写)为输出打开一个文本文件(建立一个新文件) “a”: (追加)向文本文件尾增加数据。(文件必须存在) “rb”: (只读)为输入打开一个二进制文件 “wb”:(只写)为输出打开一个二进制文件 “ab”: (追加)向二进制文件尾增加数据。
二、文件的读写
fprintf和fscanf (与printf 和scanf都是格式化读写函数,但它俩的对象不是终端而 是磁盘文件)
fprintf(文件指针,格式字符串,输出列表) fscanf(文件指针,格式字符串,输出列表) 例如: fprintf(fp, “ %d ,%6.2f ” ,i , j);
• 记录:是数据项的有序集合,用于描述一个事物的一 组属性特征。
• 文件:是记录的集合。
• 关键字:是可以用来标识一个记录的数据项的值。
记录1 数据项11 …..
….
数据项1n
记录2 数据项21 …..
…..
…..
….
记录n 数据项n1 ….
…..
…..
….
….
数据项nn
5.2 文件系统
把数据组织在一个独立的文件中,实现按文件名访 问,按记录存储的管理技术。数据以数据文件的形式存 储在计算机的外存设备上(软盘、硬盘、U盘、光盘、 磁带等),用户通过应用程序对文件中的数据进行操 作。文件的数据可以有多种组织形式。
• 可以有两个以上结点无父点 • 至少有一个结点有多于一个父结点
层次模型是 网状模型的 特殊形式, 网状模型能 描述多对多 的关系
按照网状模型建立的数据库系统称为网状模型数据库系统
关系模型(Relational Model)
用二维表结构表示实体之间联系的一种模型,能描述多 对多的关系
作为一个“关系”的二维表,必须满足如下条件:
数据的人工管理是计算机发展中最早采用的、也是最直接的数 据管理方式。程序中用到的数据,包括数据的存储、操作都必须 由程序员自己编程管理
应用程序1
数据组1
应用程序2
数据组2
… …
应用程序n
数据组n
数据与应用程序呈对应、依赖关系,应用程序中的数据无法被 其他程序利用,程序与程序之间存在着大量重复数据,称为数据 冗余;
(2)索引文件
带有一个包括关键字和存放地址索引表的文件。当查 找记录时,先按该记录的关键值到索引表中查得相应地址 ,系统再按该地址查到记录,查找效率高,使用比较广泛 。
索引文件的索引项必须按关键字顺序排列,而文件本 身可以按顺序或不按顺序排列,前者称为索引顺序文件, 后者称为索引非顺序文件,如下图。对于容纳大量数据的 文件,还可以建立索引的索引,从而形成多级索引。
型的模式 存储视图 3)内模式(物理模式)
用设备介质语言定义内
模型的模式
概念模式-内模式映射 内模式
数据库
应用程序 4
DBMS OS
数据库的数据模型
数据库系统的一个核心问题就是研究如何表示和处理实 体间的联系
表示实体及实体间联系的模型被称为数据模型
现行数据库系统中,常用的数据模型有三种:
层次模型
网状模型
关系模型
层次模型(Hierarchical Model)
用树性结构表示实体之间连系的模型称为层次模型,它 能描述一对多的关系
层次模型两个条件:
只有一个根结点 根以外的其他节点有且
只有一个父节点
按照层次模型建立的数据库系统称为层次模型数据库系统
网状模型(Network Model)
网状模型满足两个条件:
1)外模式(子模式) 用模式DDL定义外模型 的模式
子模式中包含了相应用 户的数据记录类的描述以 及与概念模型中相应记录
应用程序 1
应用程序 2
用户级 用户视图
外模式 1
外模式-概念模式映射
应用程序 3 外模式 1
的映像的定义
概念级
概念模式
概念模式的子集
全局视图
2)概念模式(模式)
用模式DDL定义概念模 物理级
(3)多重链表文件
链表文件中记录的物理存储顺序与逻辑顺序可以不一 致,它在每个记录上增设一个指针,指向下一个记录的存 储地址。
(4)倒排文件
倒排文件也是多关键字的多重链表结构,与多重链表 文件的主要区别在次关键字的链表指针信息不是加在数据 文件中的每个记录上,而是在每个次关键字的索引表中。
文件的存储格式: 文件是存储在外部介质上的记录的集合,用户通过应用程序对文件
应用程序n
数据组n
文件管理阶段,文件系统为程序与数据之间提供了一个公共接口,应 用程序采用统一的存取方法存取、操作数据,程序与数据之间不再是直 接的对应关系,因而程序和数据有了一定的独立性。
文件系统只简单地存放数据,数据的存取在很大程序上仍依赖于应用 程序,不同程序难于共享同一数据文件,数据独立性较差。
中的数据进行操作.。从操作系统角度,外设也是文件.。 C语言把文件看成是字符(字节)的序列。数据的组织形式分两种
ACSⅡ 码文件(文本文件,每个字节放一个ACSⅡ 码,代表一个字符)和二 进制文件(将内存中的数据按原样输出到磁盘上)。 一个整数10000在内存和二进制文件中占两个字节。 在文本文件中占五个字节 以下是文本文件和二进制文件的存储格式:
BB 连接盘 BB-3
AA 齿轮B
AA-6
数量
250 120 100 100 120 220 130
表a为产品数据的集合,表b是零件数据的集合
两个表之间通过关键字段“产品代号”形成一对多的关系,表a 为父表,表b为子表,它们共同描述了产品的基本的构成信息
FOXPro数据库管理系统
FoxPro是美国Fox公司 80 年代推出的一个全新的关系型数 据库管理系统,它具有强大的性能、丰富的工具、良好的图形用 户界面、简单的数据存取、完备的兼容性。
表中每一列必须是基本数据项,而不是组合项 表中每一列必须具有相同的数据类型 表中的每一列必须有一个唯一的属性名 表中不应有内容相同的行 行与列的顺序均不影响表中所表示的信息含义
关系模型的数据结构简单,数据独立性高,理论基础坚 实,操作算法成熟、完善 关系模型的理论基础是关系代数、集合论 基于关系模型建立的数据库系统称为关系数据库系统
数据库以文件方式存储数据,是数据的一种高级组织形式。 在应用程序和数据库之间,由数据库管理软件DBMS 把所有应 用程序中使用的相关数据汇集起来,按统一的数据模型,以记 录为单位存储在数据库中,为各个应用程序提供方便、快捷的 查询、使用
应用程序1
应用程序2 应用程序n
数据库管理 系统
数据库
数据的人工管理
内存
语言 程序区
输出缓冲区 输入缓冲区
缓冲文件系统示意图
磁盘
C语言对文件的操作
在C语言中用FILE类型变量,对文件进行操作。
例如: FILE *fp; //fp是指向FILE 类型结构体的指针变量
通过指针变量可找到相关的文件,并对其进行操作。
程序员对文件的操作必须遵循下列步骤 (1)建立(打开)文件。
关系模型示例
表a:产品数据表
产品 代号
产品 名称
数量 价格
AA 减速器 200 2000
BB 阀门
260 1200
CC 车床
20 56000
DD 铣床
10 64000
1:M
表b:零件数据表
产品 代号
零件 名称
零件 号
AA 齿轮A
AA-2
AA 传动轴 AA-3
CC 主轴
CC-3
CC 丝杠
CC-4
CC 三爪卡盘 CC-7
(2)向文件中读写数据。 (3)关闭文件 为区别和标识每个文件,并从中正确的读写,C语言为每个文件设置一指 针(文件指针)。实际这指针指向结构体变量的首地址,该结构体类型 定义包含stdio.h中.
一、文件的打开: 标准C 用标准输入输出库函数。 fopen( ) 例如: FILE *fp;
fp=fopen(“A1”, “ r ”); 表示以读入方式打开A1文件, fopen函数带回指向A1文件的指针并赋给 fp.从而可以使用fp对文件进行
由于数据是对应某一应用程序的,数据的独立性很差。如果数据的类 型、结构、存取方式或输入输出方式发生变化,处理它的程序必须相应 改变,数据结构性差,而且数据不能长期保存
数据的文件管理
数据的文件Biblioteka Baidu理指数据可用统一格式,在计算机存储器 中以文件形式长期保存的方式
应用程序1 应用程序2
操作系统
数据组1 数据组2
文件系统没有相应的模型约束数据的存储,仍有较高的数据冗余,极
易造成数据的不一致性。
5.3.1数据库的主要特征
数据库对所有数据实行统一、集中、独立的管理, 实现数据的共享,保证数据的完整性和安全性,提高 了数据管理效率,其主要特征有: 1. 实现了数据共享,减少了数据冗余; 2. 数据存储的结构化; 3. 增强了数据的独立性; 4. 加强了对数据的保护,主要体现在以下几个方面: (1)安全保密控制; (2)完整性控制; (3)并发控制。
设计型 数据
图形数据
说明
包括产品设计与制造中所用到的数据资料。如:国家标准与规范、产品目录及 文档管理等。
FoxPro支持多 种数据类型,在系 统集成环境下可以 完成数据的分类、 追踪、处理、存储、 打印、传输等众多 数据库操作任务
ACCESS数据库管理系统
SQLServer数据库管理系统
Oracle9i数据库管理系统
工程数据库系统简介
工业领域数据库支持整个生产过程,数据类型非常复杂
类型 管理型 数据
相关文档
最新文档