热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

简单的数据库摘要

发展简史技术发展使用计算机后,随着数据处理量的增长,产生了数据管理技术。数据管理技术的发展与计算机硬件(主要是外部存储器)系统软件及计算机应用的范围有着密切的

发展简史

 

技术发展

使用 计算机后,随着数据处理量的增长,产生了数据 管理技术。数据管理技术的发展与计算机硬件(主要是外部存储器)系统软件及计算机应用的范围有着密切的联系。数据管理技术的发展经历了以下四个阶段:人工管理阶段、文件系统阶段、数据库阶段和高级数据库技术阶段。
 

人工管理

50年代中期之前,计算机的软 硬件均不完善。硬件存储设备只有 磁带、卡片和纸带, 软件方面还没有 操作系统,当时的计算机主要用于 科学计算。这个阶段由于还没有 软件系统对数据进行管理, 程序员在程序中不仅要规定数据的 逻辑结构,还要设计其 物理结构,包括存储结构、 存取方法、输入输出方式等。当数据的物理组织或存储设备改变时, 用户程序就必须重新编制。由于数据的组织面向应用,不同的计算 程序之间不能共享数据,使得不同的应用之间存在大量的重复数据,很难维护 应用程序之间数据的一致性。
这一阶段的主要特征可归纳为如下几点:
*计算机中没有支持 数据管理软件
*数据组织面向应用,数据不能共享,数据重复。
*程序中要规定数据的逻辑结构和物理结构,数据与程序不独立。
* 数据处理方式—— 批处理

文件系统

这一阶段的主要标志是计算机中有了专门管理数据库的 软件 —— 操作系统 文件管理 )。
上世纪50年代中期到60年代中期,由于计算机大容量存储设备(如 硬盘 )的出现,推动了 软件技术 的发展,而操作系统的出现标志着 数据管理 步入一个新的阶段。在文件系统阶段,数据以文件为单位存储在外存,且由操作系统统一管理。操作系统为用户使用文件提供了友好 界面 。文件的逻辑结构与物理结构脱钩, 程序 和数据分离,使数据与程序有了一定的独立性。用户的 程序 与数据可分别存放在 外存储器 上,各个 应用程序 可以共享一组数据,实现了以文件为单位的数据共享。
但由于数据的组织仍然是面向 程序 ,所以存在大量的 数据冗余 。而且数据的逻辑结构不能方便地修改和扩充,数据逻辑结构的每一点微小改变都会影响到 应用程序 。由于文件之间互相独立,因而它们不能反映 现实世界 中事物之间的联系,操作系统不负责维护文件之间的联系信息。如果文件之间有内容上的联系,那也只能由 应用程序 去处理。

系统阶段

60年代后,随着计算机在 数据管理 领域的普遍应用,人们对 数据管理技术 提出了更高的要求:希望面向企业或部门,以数据为中心组织数据,减少数据的冗余,提供更高的数据共享能力,同时要求 程序 和数据具有较高的独立性,当数据的逻辑结构改变时,不涉及数据的物理结构,也不影响 应用程序 ,以降低应用程序研制与维护的费用。数据库技术正是在这样一个应用 需求 的基础上发展起来的。
数据库技术有如下特点:
* 面向企业或部门,以数据为中心组织数据,形成综合性的数据库,为各应用共享。
* 采用一定的 数据模型 数据模型 不仅要描述数据本身的特点,而且要描述数据之间的联系。
* 数据冗余小,易修改、易扩充。不同的 应用程序 根据处理要求,从数据库中获取需要的数据,这样就减少了数据的重复存储,也便于增加新的 数据结构 ,便于维护数据的一致性。
* 程序 和数据有较高的独立性。
* 具有良好的用户 接口 ,用户可方便地开发和使用数据库。
* 对数据进行统一管理和控制,提供了数据的 安全性 、完整性、以及 并发控制
从文件系统发展到 数据库系统 ,这在信息领域中具有里程碑的意义。在文件系统阶段,人们在 信息处理 中关注的中心问题是系统功能的设计,因此 程序设计 占主导地位;而在数据库方式下,数据开始占据了中心位置,数据的结构设计成为信息系统首先关心的问题,而 应用程序 则以既定的数据结构为基础进行设计。


什么是关系型数据库

关系数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。现实世界中的各种实体以及实体之间的各种联系均用关系模型来表示。关系模型是由埃德加·科德于1970年首先提出的,并配合“科德十二定律”。现如今虽然对此模型有一些批评意见,但它还是数据存储的传统标准。标准数据查询语言SQL就是一种基于关系数据库的语言,这种语言执行对关系数据库中数据的检索和操作。 关系模型由关系数据结构关系操作集合、关系完整性约束三部分组成。
关系型的操作
关系模块中常用的操作包括:
数据查询
选择 投影 连接 并 交 差 除 数据操作 增加 删除 修改 查询


什么是数据库

1.
本质上“数据库”就是为了实现一定的目的按某种规则组织起来的“数据”的“集合”,如图所示。

2.目前,网站中使用的数据库有做软的Access,MSSQL和SYBASE的MySQL三类。它们有各自的优点,分别适食在不同的网站规樓和语言时使用。比方说中小型的ASP网站大多都是使用Access数据,PHP网站大多使用MySQL.

数据库中一般都存储了管理员用户名和密码等重要信息。

3.数据库的后缀名一般为MDB,黑客在入侵网站时总会先用站点探测器査找整个网站是否存在MDB文件,如果有并可以用xp系统下载,那么入侵基本上就成功了80%。

  通常,一台服务器中安装的组件越多,被人侵的可能性就越大。比方说,在服务器中安装了需要支持SQLServer支持的论坛后,就可以从服务器、论坛漏洞、SQLServer三方面来尝试人侵。換句话说,如果服务器的管理员不想被人侵的话,就需要及时地对这三方面不断地进行补丁安装,因此,数据库程序的安全也必须加人到服务器的整个安全体系中。



数据库的作用
1,Access数据库

(1)完善地管理各种数据库对象具有强大数据组织、用户管理、安全检查等功能
(2)强大数据处理功能工作组级别网络环境使用Access开发多用户数据库管理系统具有传统XBASE(DBASE、FoxBASE统称)数据库系统所无法实现客户服务器(Cient/Server)结构和相应数据库安全机制Access具备了许多先进大型数据库管理系统所具备特征事务处理/出错回滚能力等
(3)方便地生成各种数据对象利用存储数据建立窗体和报表视性好 (4)作Office套件部分与Office集成实现无缝连接 (5)能够利用Web检索和发布数据实现与Internet连接 Access主要适用于小型应用系统或作客户机/服务器系统客户端数据库
2、 Informix数据库
Informix提供面向屏幕数据输入询问及面向设计询问语言报告生成器数据定义包括定义关系、撤销关系、定义索引和重新定义索引等Informix建立数据库方便地重构数据库系统保护措施十分健全仅能使数据得保护而被权限外用户存取且能重新建立丢失了文件及恢复被破坏了数据其文件大小受磁盘空间限制大小和记录长度均达2K采用加下标顺序访问法Informix与COBOL软件兼容并支持C语言程序 Informix移植性强、兼容性好多微型计算机和小型机上得应用尤其适用于小型企业人事、仓储及财务管理
3、 Orcale数据库
支持多种硬件和操作系统平台从台式机大型和超级计算机各种硬件结构提供高度伸缩性支持对称多处理器、群集多处理器、大规模处理器等并提供广泛国际语言支持 Orcale多用户系统能自动从批处理或线环境系统故障恢复运行系统提供了完整软件开发工具Developer2000包括交互式应用程序生成器、报表打印软件、字处理软件及集式数据字典用户利用些工具生成自己应用程序Orcal二维表形式表示数据并提供了SQL(结构式查询语言)完成数据查询、操作、定义和控制等基本数据库管理功能Orcale具有移植性通过通信功能微型计算机上程序同小型乃至大型计算机上Orcale并且能相互传递数据另外Orcale还具有与C语言接电子表格、图形处理等软件 Orcale属于大型数据库系统主要适用于大、小型应用系统或作客户机/服务器系统服务器端数据库系统

4、 Sybase数据库

美国Sybase公司研制的种关系型数据库系统种典型UNIX或WindowsNT平台上客户机/服务器环境下大型数据库系统 Sybase提供了套应用程序编程接口和库与非Sybase数据源及服务器集成允许数据库之间复制数据适于创建多层应用系统具有完备触发器、存储过程、规则及完整性定义支持优化查询具有较好数据安全性Sybase通常与SybaseSQLAnywhere用于客户机/服务器环境前者作服务器数据库者客户机数据库采用该公司研制PowerBuilder开发工具我国大型系统具有广泛应用美国Sybase公司研制种关系型数据库系统种典型UNIX或WindowsNT平台上客户机/服务器环境下大型数据库系统 Sybase提供了套应用程序编程接口和库与非Sybase数据源及服务器集成允许数据库之间复制数据适于创建多层应用系统具有完备触发器、存储过程、规则及完整性定义支持优化查询具有较好数据安全性Sybase通常与SybaseSQLAnywhere用于客户机/服务器环境前者作服务器数据库者客户机数据库采用该公司研制PowerBuilder开发工具我国大型系统具有广泛应用

另外各行各业比如银行比如现在二代身份证全国联网都必须用数据库
公司管理内部仓库数据库
个人资金管理也是一个简单数据库
手机上的通讯录也是一个数据库各行各业都有涉及




推荐阅读
  • 本文介绍了使用哈夫曼树实现文件压缩和解压的方法。首先对数据结构课程设计中的代码进行了分析,包括使用时间调用、常量定义和统计文件中各个字符时相关的结构体。然后讨论了哈夫曼树的实现原理和算法。最后介绍了文件压缩和解压的具体步骤,包括字符统计、构建哈夫曼树、生成编码表、编码和解码过程。通过实例演示了文件压缩和解压的效果。本文的内容对于理解哈夫曼树的实现原理和应用具有一定的参考价值。 ... [详细]
  • 如何搭建Java开发环境并开发WinCE项目
    本文介绍了如何搭建Java开发环境并开发WinCE项目,包括搭建开发环境的步骤和获取SDK的几种方式。同时还解答了一些关于WinCE开发的常见问题。通过阅读本文,您将了解如何使用Java进行嵌入式开发,并能够顺利开发WinCE应用程序。 ... [详细]
  • 本文介绍了设计师伊振华受邀参与沈阳市智慧城市运行管理中心项目的整体设计,并以数字赋能和创新驱动高质量发展的理念,建设了集成、智慧、高效的一体化城市综合管理平台,促进了城市的数字化转型。该中心被称为当代城市的智能心脏,为沈阳市的智慧城市建设做出了重要贡献。 ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • 本文介绍了使用Java实现大数乘法的分治算法,包括输入数据的处理、普通大数乘法的结果和Karatsuba大数乘法的结果。通过改变long类型可以适应不同范围的大数乘法计算。 ... [详细]
  • 本文是一位90后程序员分享的职业发展经验,从年薪3w到30w的薪资增长过程。文章回顾了自己的青春时光,包括与朋友一起玩DOTA的回忆,并附上了一段纪念DOTA青春的视频链接。作者还提到了一些与程序员相关的名词和团队,如Pis、蛛丝马迹、B神、LGD、EHOME等。通过分享自己的经验,作者希望能够给其他程序员提供一些职业发展的思路和启示。 ... [详细]
  • 本文讨论了在Windows 8上安装gvim中插件时出现的错误加载问题。作者将EasyMotion插件放在了正确的位置,但加载时却出现了错误。作者提供了下载链接和之前放置插件的位置,并列出了出现的错误信息。 ... [详细]
  • 本文介绍了C#中生成随机数的三种方法,并分析了其中存在的问题。首先介绍了使用Random类生成随机数的默认方法,但在高并发情况下可能会出现重复的情况。接着通过循环生成了一系列随机数,进一步突显了这个问题。文章指出,随机数生成在任何编程语言中都是必备的功能,但Random类生成的随机数并不可靠。最后,提出了需要寻找其他可靠的随机数生成方法的建议。 ... [详细]
  • 本文讨论了如何优化解决hdu 1003 java题目的动态规划方法,通过分析加法规则和最大和的性质,提出了一种优化的思路。具体方法是,当从1加到n为负时,即sum(1,n)sum(n,s),可以继续加法计算。同时,还考虑了两种特殊情况:都是负数的情况和有0的情况。最后,通过使用Scanner类来获取输入数据。 ... [详细]
  • Android Studio Bumblebee | 2021.1.1(大黄蜂版本使用介绍)
    本文介绍了Android Studio Bumblebee | 2021.1.1(大黄蜂版本)的使用方法和相关知识,包括Gradle的介绍、设备管理器的配置、无线调试、新版本问题等内容。同时还提供了更新版本的下载地址和启动页面截图。 ... [详细]
  • 本文介绍了Hyperledger Fabric外部链码构建与运行的相关知识,包括在Hyperledger Fabric 2.0版本之前链码构建和运行的困难性,外部构建模式的实现原理以及外部构建和运行API的使用方法。通过本文的介绍,读者可以了解到如何利用外部构建和运行的方式来实现链码的构建和运行,并且不再受限于特定的语言和部署环境。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • 本文介绍了在使用Python中的aiohttp模块模拟服务器时出现的连接失败问题,并提供了相应的解决方法。文章中详细说明了出错的代码以及相关的软件版本和环境信息,同时也提到了相关的警告信息和函数的替代方案。通过阅读本文,读者可以了解到如何解决Python连接服务器失败的问题,并对aiohttp模块有更深入的了解。 ... [详细]
  • Python瓦片图下载、合并、绘图、标记的代码示例
    本文提供了Python瓦片图下载、合并、绘图、标记的代码示例,包括下载代码、多线程下载、图像处理等功能。通过参考geoserver,使用PIL、cv2、numpy、gdal、osr等库实现了瓦片图的下载、合并、绘图和标记功能。代码示例详细介绍了各个功能的实现方法,供读者参考使用。 ... [详细]
  • 本文介绍了在Windows环境下如何配置php+apache环境,包括下载php7和apache2.4、安装vc2015运行时环境、启动php7和apache2.4等步骤。希望对需要搭建php7环境的读者有一定的参考价值。摘要长度为169字。 ... [详细]
author-avatar
贤慧201077
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有