Java小白的数据库爱情(二)Oracle 入门

概述

随着互联网时代的到来,需要持久化数据呈现井喷式发 展,常规的 io 操作虽然可以满足持久化的需求,但是, 对于持久化的目的,对数据的操纵,显然力不从心,且 操作的复杂度很大,不利于大规模的发展,审时度势, 数据库应运而生。

数据库

数据库(Database)是按照数据结构来组织、存储和管理数 据的 仓库 ;随着信息技术和市场的发展,数据管理不再 仅仅是存储和管理数据,而转变成用户所需要的各种数 据管理的方式。数据库有很多种类型,从最简单的存储 有各种数据的 表格 到能够进行海量数据存储的 大型数据 库系统 都在各个方面得到了广泛的应用。

常用的数据库

分类 产品 特点
小型 access、 foxbase 负载量小,用户大概 100 人以内(留言板、信息管理系统) ;成本在千元之内 ,对安全性要求不高
中型 sqlservler、 mysql 负载量,日访问在 5000~10000 ;成本在万元以内(商务网站) ;满足日常安全需求
大型 sybase、 db2、 oracle 海量负载,可以处理海量数据(sybase<oracle<db2海量处理能力);安全性高,相对贵

DBMS

数据库管理系统(Database Management System)是一种 操纵和管理数据库的大型软件,用于建立、使用和维护 数据库,简称 DBMS。它对数据库进行统一的管理和控 制,以保证数据库的安全性和完整性。用户通过 DBMS 访问数据库中的数据,数据库管理员也通过 dbms 进行 数据库的维护工作。它可使多个应用程序和用户用不同 的方法在同时或不同时刻去建立,修改和询问数据库。 大部分 DBMS 提供数据定义语言 DDL (Data Definition Language)和数据操作语言 DML ,供用户定义数据库的 模式结构与权限约束,实现对数据的追加、删除等操 作。

根据存储模型可将数据库划分为关系型数据库和非关系 型数据库。关系型数据库,是建立在关系模型基础上的 数据库,借助于集合代数等数学概念和方法来处理数据 库中的数据。简单来说,关系模型指的就是二维表格模 型,而一个关系型数据库就是由二维表及其之间的联系 所组成的一个数据组织。标准数据查询语言 SQL 就是一 种基于关系数据库的语言,这种语言执行对关系数据库 中数据的检索和操作。

SQL 语言介绍

SQL(Structured Query Language)为数据库的语言,在 1974 年由Boyce【博伊斯】和Chamberlin【钱伯林】提 出的一种介于关系代数与关系演算之间的结构化查询语 言,是一个通用的、功能极强的关系型数据库语言。它 包含三部分

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2IsazOFe-1605409914982)(Java小白的数据库爱情(二)Oracle.assets/1.png)]

三范式

在设计数据库时,存在行业的标准,这个标准也称为条 件,即范式 Normal Form。一般遵循三个条件即可,也 就是”三范式”(3NF)。

  • **1NF:**是指数据库表的每一列都是不可分割的基本数据 项,同一列中不能有多个值,即实体中的某个属性不 能有多个值或者不能有重复的属性。如果出现重复的 属性,就可能需要定义一个新的实体,新的实体由重 复的属性构成,新实体与原实体之间为一对多关系。 在第一范式(1NF)中表的每一行只包含一个实例的 信息。
  • 2NF:是在第一范式(1NF)的基础上建立起来的,即 满足第二范式(2NF)必须先满足第一范式(1NF)。 第二范式(2NF)要求数据库表中的每个实例或行必 须可以被唯一地区分。为实现区分通常需要为表加上 一个列,以存储各个实例的唯一标识。如 emp 表中加 上了员工编号(empno)列,因为每个员工的员工编 号是唯一的,因此每个员工可以被唯一区分。这个唯 一属性列被称为主关键字或主键、主码。同时要求实 体的属性完全依赖于主关键字。所谓完全依赖是指不 能存在仅依赖主关键字一部分的属性,如果存在,那 么这个属性和主关键字的这一部分应该分离出来形成 一个新的实体,新实体与原实体之间是一对多的关 系。为实现区分通常需要为表加上一个列,以存储各 个实例的唯一标识。即第二范式就是非主属性非部分 依赖于主键。
  • 3NF:必须先满足第二范式(2NF)。3NF 要求一个数 据库表中不包含已在其它表中已包含的非主关键字信 息。即第三范式就是属性不依赖于其它非主属性。

非主关键字信 息。即第三范式就是属性不依赖于其它非主属性。

Java小白的数据库爱情(二)Oracle 入门相关推荐

  1. Java小白的数据库爱情(四)Oracle DDL、DML使用

    Java小白的数据库爱情(四)Oracle DDL.DML使用 rowid .rownum rowid 和 rownum都是伪列 rowid rowid 不是表的某一个字段,相当于对象的地址,根据地址 ...

  2. 数据库 day60,61 Oracle入门,单行函数,多表查询,子查询,事物处理,约束,rownum分页,视图,序列,索引

    1.    oracle介绍 ORACLE数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/SERVER)或B/S体系结构的 ...

  3. Java 课程设计--数据库管理系统

    目录 源代码说明 一.源代码地址 二.源代码文件说明 1.关键类说明 2.关键方法说明 参考文献 源代码说明 该文章是对JAVA课程设计-<基于JAVA实现的数据库管理系统> 的源代码说明 ...

  4. Oracle入门(十二)之SQL的DDL

    一.数据类型 Character 数据类型 Number 数据类型 Date 数据类型 Raw 和 Long Raw 数据类型 LOB 数据类型 注:Oracle数据类型详解 二.表 (1)创建表 c ...

  5. python自带的数据库_Python小白的数据库入门

    前言 SQL数据库数据库SQL语言入门SQL简介SQL 的作用 SQL语句分类 SQLite 数据库SQLite 中的数据类型 DDL语句创建表 删除表 修改表 DML语句添加 删除 修改 查询 Py ...

  6. java连接本地oracle数据库_JAVA连接oracle数据库的三种方式

    1 传统方式连接数据库(效率较低) 此方法连接数据库,其性能.可靠性与稳定性随着用户访问量的增加逐渐下降,跟踪测试表明,其根本问题与Connection对象的创建有关.不过在这里还是讲一下此方法的实现 ...

  7. 小白学编程“Java小白”入门解疑大全

    成功的人分几种,有一种人叫做关系户,他们渠道多,广织关系网,有一种叫做平台户,他们平台有多硬,他们就有多硬,但无论是关系户还是平台户,依靠的总是别人的手.别人的嘴巴.别人辛苦创立下来的资源,归根到底, ...

  8. oracle入门到大神(备mysql、java基础、javaee必经之路)-任亮-专题视频课程

    oracle入门到大神(备mysql.java基础.javaee必经之路)-19178人已学习 课程介绍         Oracle10g的安装.orcale的基本概念介绍.命令行常用操作.Scot ...

  9. Java框架抽离的一些经历1:MYSQL数据库安装和 Oracle转换成Mysql数据库

    本篇记录独自抽离部署一个java项目,方便以后查阅参考. 开发语言:JSP 部署项目环境:JDK1.8 + Mysql8.023 开发工具:IDEA 代码同步工具:SVN 一.数据库 之前数据库使用的 ...

最新文章

  1. python不支持以下哪种数据类型_Python 不支持以下哪种数据类型?
  2. cocos2dx 大地图分块加载的研究(初)
  3. 长安大学第三届ACM-ICPC程序设计竞赛 L题
  4. 大脑构造图与功能解析_解析地轨、隐藏轨推拉门及折叠门的构造做法,收藏学习...
  5. java中使用akka手记三 cluster详例
  6. 前端学习(2216):react元素渲染
  7. Ubuntu系统opencv4.4 opencv_contribute安装常见问题
  8. mysql 内联函数_C++之内联函数
  9. python版本切换_如何在cmd下切换不同版本的Python
  10. DevExpress v18.1新版亮点——WinForms篇(六)
  11. 【转】Java 中正确使用 hashCode 和 equals 方法
  12. 蓝牙网络共享linux,在Linux系统上安装Blueman以通过蓝牙共享文件
  13. Insecure Randomness
  14. 百家号同步公众号的自媒体工具有吗?
  15. QPushButton去掉虚线框
  16. 全国计算机等级考试评分标准,全国计算机等级考试评分标准
  17. Python基本手册
  18. Understanding Maximum-a-Posteriori (MAP) Estimation
  19. 26、灭火系统中最不利点处洒水喷头的工作压力是多少
  20. Qt软件打包后报错“无法定位程序输入点于动态链接库.exe上。”解决办法(超详细,看完不会怪我)

热门文章

  1. matlab中as什么意思,FRAS是什么意思
  2. java程序员的浪漫代码_专属于程序员的浪漫-Java输出动态闪图iloveyou
  3. 考研英语作文50个提分句式
  4. Python 的列表运算和列表常用函数
  5. 潮汐是如何实现fofa的banner指纹识别的
  6. 学习ORACLE-RHEL7安装Oracle12cR2
  7. 武汉理工大学计算机考研复试-算法与程序设计(绿皮书算法java实现)
  8. 快递鸟查询Api接口使用(PHP版)
  9. English--基础知识点--1--比较级/最高级
  10. Windows下安装zerotier,网络状态提示PORT_ERROR错误解决