热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

Oracle数据库入门之数据库基础

概念:数据库(DB,Database):批量组织存储和操作数据的仓库。数据仓库是数据库领域中的基本名词,这里指是它常规意义上的含义数据库管理系统(DBMS,DatabaseManagementSystem):在数据库软件中起到组织管理数据的软件模块数据库管理员(DBA,DatabaseAd

概念:数据库(DB,Database):批量组织存储和操作数据的仓库。数据仓库是数据库领域中的基本名词,这里指是它常规意义上的含义 数据库管理系统(DBMS,Database Management System):在数据库软件中起到组织管理数据的软件模块 数据库管理员(DBA,Database Ad

  概念:数据库(DB,Database):批量组织存储和操作数据的仓库。数据仓库是数据库领域中的基本名词,这里指是它常规意义上的含义

  数据库管理系统(DBMS,Database Management System):在数据库软件中起到组织管理数据的软件模块

  数据库管理员(DBA,Database Administrator):操纵数据库的管理和维护人员

  数据库系统(DBS,Database System):基于数据库的应用系统或软件系统,相对来说出现的频率要低一些

  关系型数据库(RDB,Relationship Database):基于关系模型而建立或组织起来的数据库

  关系型数据库管理系统(RDBMS):它是目前数据库的主流形式

  SQL语言:即Structured Query Language,结构化查询语言。常用SQL指令有SELECT、INSERT、DELETE、UPDATE、CREATE、DROP

  SQL是使用关系模型的数据库语言,用于和各类数据库的交互,提供通用的数据管理和查询功能

  SQL分类:数据定义语言(DDL,Data Definition Language):如Create、Alter、Drop、Truncate

  数据操纵语言(DML,Data Manipulation Language):如Insert、Update、Delete、Merge

  数据控制语言(DCL,Data Control Language):如Grant、Revoke

  其它语言要素(Additional Language Elements):如事务控制语句:Commit、Rollback、Savepoint

  SQL说明:其中Select是最频繁也是最常用的。DBA可以使用DCL进行数据库的管理,而应用开发人员几乎用不到它

  数据库简述

  管理:第一阶段:手工管理阶段:数据不保存。数据由应用程序管理,编写程序要考虑数据结构

  数据面向程序,不共享。数据不具有独立性,随其逻辑结构和物理结构而变化

  第二阶段:文件管理阶段:数据共享性差。数据以文件形式长期存在

  第三阶段:数据库管理阶段:有利于实现数据共享。数据面向应用,而非面向程序

  历程:第一代:非关系型数据库系统:上世纪60年代末问世,包括层次性和网状型

  第二代:关系型数据库系统(RDBS):上世纪70年代中期问世。Oracle就是RDBS的代表

  第三代:对象—关系数据库系统(ORDBS、OODBS):上世纪80年代中期至今。也称为面向对象的数据库系统,它力图以对象的形式

  或者说以对象为单位进行数据的存储和操纵。至目前为止,它还没有推出成熟的产品

  分类:网状型数据库:采用以记录类型为结点的网状数据模型。对于这种错综复杂的交织在一起的网而言,,在进行数据检索的时候是非常不方便的

  层次型数据库:采用层次模型模拟现实世界中按层次组织起来的事物

  关系型数据库:采用二维表结构储存与管理数据,并规定了表内和表间数据的依存关系。当前业界所用的主流数据库几乎都是关系型数据库

  当前流行的关系型数据库:Oracle(可算是业界第一名)、IBMDB2、SQL Server、SyBase、Informix(它的公司已被IBM收购)等

  关系型数据库采用结构化查询语言(SQL)作为客户端程序与数据库服务器间沟通的桥梁

  数据建模

  概念:要将现实世界中客观存在的事物以数据的形式存储到计算机中并进行处理,就需要对其进行分析、抽象进而确定数据的结构以及数据间的内在联系,这一过程称为数据建模

  要求:能够比较真实地模拟现实世界,容易为人所理解,便于计算机实现

  要素:数据结构:描述事物的静态特性

  数据操作:描述事物的动态特性

  完整性约束:描述事物内部和事物间的约束性关系

  续一:现实世界:事物以及事物间的联系是客观存在的

  概念世界:是人们对现实世界中客观事物及其联系的认识和抽象

  概念世界中按用户的观点对现实世界建模,所得到的“概念数据模型”不依赖具体的计算机系统和DBMS

  机器世界:按计算机的观点对概念世界中的事物(实体及实体间的联系)进一步建模,将之抽象/转换为与计算机/DBMS相关的“物理数据模型”

  续二:概念数据模型(CDM,Conceptual Database Model):主要用于数据库的概念设计

  CDM以实体—关系(E—R)模型为基础,将现实世界中的客观对象抽象为实体和关系

  在机器世界中,CDM将被转换为特定DBMS所支持的物理数据模型(PDM,Physical Database Model)

  相关术语:实体(Entity):客观存在并且可以相互区分开来的事物

  实体集(Entity Set):同一类实体的集合。通常将实体和实体集混用,笼统称为实体。一般很少强调实体集的概念

  属性(Attribute):描述实体的特性

  关系(Relationship):实体集之间的对应关系(现实世界事物之间的相互关联)

  实体—关系模型(E—R Model,Entity-Relationship Model)

  E—R模型:也称为E—R方法,它是由P.P.S.Chen(陈姓美籍华人)于1976年提出,该方法使用E—R图来描述现实世界的概念模型

  在E—R模型中,现实世界是由一切称为实体的对象和这些对象之间的关系组成。它的三要素:实体、关系、属性

  E—R图:即Entity—Relationship Diagram,是描述概念世界,建立概念模型的实用工具

  E—R图三要素:实体:用矩形框表示

  属性:用椭圆形表示,并用连线与实体连在一起

  实体间联系:用菱形框表示,并用连线分别与相关实体相连,且需在连线上注明联系类型

  实体间联系的类型分为三种,即一对一关系(1:1)、一对多关系(1:n)、多对多关系(m:n)

  关系型数据库基本术语

  术语:关系:整个二维表

  关系名:表格名称

  元祖:行数据(记录)

  属性:列数据(字段/分量)

  属性名:列名称(字段名)

  主键:唯一确定元祖的属性组(关键字)

  域:属性的取值范围

  关系模式:关系名(属性列表)。如:学生(学号,姓名,性别,电话)

  约束:域完整性约束:又称列完整性。对某一个字段或某一个属性的取值的约束

  实体完整性约束:又称行完整性。要求表中每一行有一个唯一的标志符,这个标志符就是主关键字

  参照完整性约束:又称引用完整性。它指的是多表之间的参照性,即保证主表中的数据与从表中的数据的一致性

  Oracle【甲骨文】

  公司:1977年,6月创办SDL,Software Development Laboratories

  1979年,SDL更名为RSI,Relational Software Inc

  1983年,RSI更名为ORACLE

  SCOTT是Oracle公司除了两个创始人之外的第一个正式的雇员

  现为全球最大数据库软件及服务供应商、全球第二大软件供应商(第一是微软)

  Oracle目前在业界是当之无愧的第一名,它在国内行业占有份额也超过了50%

  紧随其后的是IBM的DB2、SyBase公司的SyBase和微软的SQL Server等等,另外MySql的应用也比较广泛

  数据库:全球化、跨平台的数据库。Oracle遵守数据存取语言、操作系统、用户接口和网络通信协议的工业标准

  支持多用户、高性能的事务处理。强大的安全性控制和完整性控制。支持分布式数据库和分布处理

  目前最新的版本是11g,g是grid网格。即支持网格计算,支持数据库的集权化运行

  当前业界应用的主流是Oracle9i,i是integrated集成。它集成了客户端和服务器端以及其它工具

推荐阅读
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 推荐一个ASP的内容管理框架(ASP Nuke)的优势和适用场景
    本文推荐了一个ASP的内容管理框架ASP Nuke,并介绍了其主要功能和特点。ASP Nuke支持文章新闻管理、投票、论坛等主要内容,并可以自定义模块。最新版本为0.8,虽然目前仍处于Alpha状态,但作者表示会继续更新完善。文章还分析了使用ASP的原因,包括ASP相对较小、易于部署和较简单等优势,适用于建立门户、网站的组织和小公司等场景。 ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • 禁止程序接收鼠标事件的工具_VNC Viewer for Mac(远程桌面工具)免费版
    VNCViewerforMac是一款运行在Mac平台上的远程桌面工具,vncviewermac版可以帮助您使用Mac的键盘和鼠标来控制远程计算机,操作简 ... [详细]
  • 本文详细介绍了云服务器API接口的概念和作用,以及如何使用API接口管理云上资源和开发应用程序。通过创建实例API、调整实例配置API、关闭实例API和退还实例API等功能,可以实现云服务器的创建、配置修改和销毁等操作。对于想要学习云服务器API接口的人来说,本文提供了详细的入门指南和使用方法。如果想进一步了解相关知识或阅读更多相关文章,请关注编程笔记行业资讯频道。 ... [详细]
  • t-io 2.0.0发布-法网天眼第一版的回顾和更新说明
    本文回顾了t-io 1.x版本的工程结构和性能数据,并介绍了t-io在码云上的成绩和用户反馈。同时,还提到了@openSeLi同学发布的t-io 30W长连接并发压力测试报告。最后,详细介绍了t-io 2.0.0版本的更新内容,包括更简洁的使用方式和内置的httpsession功能。 ... [详细]
  • 关于我们EMQ是一家全球领先的开源物联网基础设施软件供应商,服务新产业周期的IoT&5G、边缘计算与云计算市场,交付全球领先的开源物联网消息服务器和流处理数据 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文介绍了高校天文共享平台的开发过程中的思考和规划。该平台旨在为高校学生提供天象预报、科普知识、观测活动、图片分享等功能。文章分析了项目的技术栈选择、网站前端布局、业务流程、数据库结构等方面,并总结了项目存在的问题,如前后端未分离、代码混乱等。作者表示希望通过记录和规划,能够理清思路,进一步完善该平台。 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • 众筹商城与传统商城的区别及php众筹网站的程序源码
    本文介绍了众筹商城与传统商城的区别,包括所售产品和玩法不同以及运营方式不同。同时还提到了php众筹网站的程序源码和方维众筹的安装和环境问题。 ... [详细]
  • 如何在php中将mysql查询结果赋值给变量
    本文介绍了在php中将mysql查询结果赋值给变量的方法,包括从mysql表中查询count(学号)并赋值给一个变量,以及如何将sql中查询单条结果赋值给php页面的一个变量。同时还讨论了php调用mysql查询结果到变量的方法,并提供了示例代码。 ... [详细]
  • MyBatis多表查询与动态SQL使用
    本文介绍了MyBatis多表查询与动态SQL的使用方法,包括一对一查询和一对多查询。同时还介绍了动态SQL的使用,包括if标签、trim标签、where标签、set标签和foreach标签的用法。文章还提供了相关的配置信息和示例代码。 ... [详细]
author-avatar
mobiledu2502891853
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有