oracle取日期最大的一条数据_简单数据库

什么是数据库?

所谓的数据库其实就是数据的集合。用户可以对集合中的数据进行新增、查询、更新、删除等操作。数据库是以一定方式储存在一起、能与多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。

数据库类型

特点:关系型数据库最典型的数据结构是表,由二维表及其之间的联系所组成的一个数据组织。支持事务一致特性。

关系型

  • Oracle
  • Mysql
  • PostgreSQL
  • DB2
  • Microsoft SQL Server
  • Microsoft Access

优点

  1. 易于维护:都是使用表结构,格式一致;
  2. 使用方便:SQL 语言通用;
  3. 复杂操作:支持 SQL,可用于一个表以及多个表之间非常复杂的查询;

缺点

  1. 性能差:读写性能比较差,尤其是海量数据的高效率读写,传统关系型数据库来说,硬盘 I/O 是一个很大的瓶颈;
  2. 存储方式不灵活:固定的表结构,灵活度稍欠;

非关系型

特点:非关系型数据库严格上不是一种数据库,应该是一种数据结构化存储方法的集合,可以

是文档或者键值对等。不支持事务一致特性。

  • Redis
  • Mongodb
  • Big Table

优点

  1. 格式灵活:存储数据的格式可以是 key,value 形式、文档形式、图片形式等等;
  2. 高扩展性:基于键值对,数据没有耦合性,容易扩展;
  3. 速度快:无需经过 sql 层的解析,读写性能很高;

缺点

  1. 不支持 SQL:不提供 sql 支持,学习和使用成本较高;
  2. 不支持事务:无事务处理能力;
  3. 不支持复杂查询:数据结构相对复杂,复杂查询方面稍欠;

Oracle 目录结构与系统用户

Oracle 目录结构

d667e64681bf3cf02cbc17b43fadc74a.png

1.admin 目录

记录 Oracle 实例的配置,运行日志等文件。每个实例一个目录。

2.cfgtoollogs 目录

下面子目录分别存放当运行 dbca,emca,netca 等图形化配置程序时的 log.

3.checkpoints 目录

存放检查点文件

4.diag 目录

Oracle11g 新添加的一个重组目录。其中的子目录,基本上 Oracle 每个组件都有了自己单独的目录,在 Oracle10g 中我们一直诟病的 log 文件散放在四处的问题终于得到解决,无论是 asm 还是 crs 还是 rdbms,所有组件需要被用来诊断的 log 文件都存放在了这个新的目录下.

5.flash_recovery_area(闪回区)目录

闪回区:分配一个特定的目录位置来存放一些特定的恢复文件,用于集中和简化管理数据库恢复工作。闪回区可存储完全的数据文件备份、增量备份、数据文件副本、当前的控制文件、备份的控制文件、spfile 文件、快照控制文件、联机日志文件、归档日志、块跟踪文件、闪回日志。

6.oradata 目录

存放数据文件。

c0ea053ce7d7227aed89cd1b8f021e1e.png
  1. CONTROL01.CTLOracle 数据库的控制文件。
  2. EXAMPLE01.DBFOracle 数据库表空间文件。
  3. REDO01.LOGOracle 数据库的重做日志文件。
  4. SYSAUX01.DBF11g 新增加的表空间。主要存储除数据字典以外的其他数据对象。由系统内部自动维护。
  5. SYSTEM01.DBF用于存放 Oracle 系统内部表和数据字典的数据。比如,表名、列名、用户名等。
  6. TEMP01.DBF临时表空间文件。
  7. UNDOTBS01.DBF撤销表空间文件。用来保存回滚数据。
  8. USERS01.DBF用户表空间。

7.product 目录

Oracle RDBMS 的软件存放目录。RDBMS 即关系数据库管理系统(Relational DatabaseManagement System)。

1.对象权限(Object privileges)

对象权限是指在指定的表,视图,序列上制定执行动作的权限或权利。

2.角色权限(Role privileges)

角色是可以授予用户的相关权限的组,该方法使权限的授予,撤回更加容易管理。

3.系统权限(System privileges)

为用户分配创建表、创建用户、创建视图、创建存储过程等权限。

分配链接权限

为当前用户分配一个 connect 链接角色

分配系统权限

Oracle 中的数据类型

一:字符类型

字符串数据类型还可以依据存储空间分为固定长度类型(CHAR) 和可变长度类型(VARCHAR2/NVARCHAR2)两种。

1.CHAR 类型

CHAR 类型,定长字符串,会用空格填充来达到其最大长度。非 NULL 的 CHAR(12)总是包含 12 字节信息。CHAR 字段最多可以存储 2,000 字节的信息。如果创建表时,不指定 CHAR 长度,则默认为 1.

2.VARCHAR2 类型

变长字符串,与 CHAR 类型不同,它不会使用空格填充至最大长度。VARCHAR2 最多可以存储 4,000 字节的信息。

3.NVARCHAR2 类型

这是一个包含 UNICODE 格式数据的变长字符串。 NVARCHAR2 最多可以存储 4,000字节的信息。

二:数字类型

1.NUMBER 类型

NUMBER(P,S)是最常见的数字类型。

P 是 Precision 的英文缩写,即精度缩写,表示有效数字的位数,最多不能超过 38 个有效数字。

S 是 Scale 的英文缩写,表示小数点数字的位数。

2.INTEGER 类型

INTEGER 是 NUMBER 的子类型,它等同于 NUMBER(38,0),用来存储整数。若插入、更新的数值有小数,则会被四舍五入。

1.BINARY_FLOAT 类型

BINARY_FLOAT 是 32 位、 单精度浮点数字数据类型。可以支持至少 6 位精度,每个BINARY_FLOAT 的值需要 5 个字节,包括长度字节。

2.BINARY_DOUBLE

BINARY_DOUBLE 是为 64 位,双精度浮点数字数据类型。每个 BINARY_DOUBLE的值需要 9 个字节,包括长度字节。

三:日期类型

DATE 类型

DATE 是最常用的数据类型,日期数据类型存储日期和时间信息。虽然可以用字符或数字类型表示日期和时间信息,但是日期数据类型具有特殊关联的属性。为每个日期值,Oracle存储以下信息: 世纪、 年、 月、 日期、 小时、 分钟和秒。一般占用 7 个字节的存储空间。

TIMESTAMP 类型

这是一个 7 字节或 12 字节的定宽日期/时间数据类型。它与 DATE 数据类型不同,因为TIMESTAMP 可以包含小数秒,带小数秒的 TIMESTAMP 在小数点右边最多可以保留 9 位。

TIMESTAMP WITH TIME ZONE 类型

这是 TIMESTAMP 类型的变种,它包含了时区偏移量的值。

TIMESTAMP WITH LOCAL TIME ZONE 类型

将时间数据以数据库时区进行规范化后进行存储

在 Oracle 中创建表

Oracle 表名命名规则

  • 必须以字母开头
  • 长度不能超过 30 个字符
  • 避免使用 Oracle 的关键字
  • 只能使用 A-Z、a-z、0-9、_#$

使用带有特殊符号的表名

Oracle 在创建表时,表名会自动转换大写。Oracle 对表名大小写不敏感。如果在定义表名时含有特殊符号,或者用小写字母来定义表名则需要在表名两侧添加双引号。

数据库中的约束

约束的作用

约束用于规定表中的数据规则,如果存在违反约束的数据行为,行为会被约束终止。

约束类型

1主键约束(Primay Key Constraint):唯一性,非空性。

2唯一约束 (Unique Constraint):唯一性,可以空,但只能有一个。

3检查约束 (Check Constraint):对该列数据的范围、格式的限制(如:年龄、性别等)。

4非空约束 (Not Null Constraint):该列不允许包含空值。

5外键约束 (Foreign Key Constraint):需要建立两表间的关系并引用主表的列。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值