Oracle数据库中日期的操作、主键自增与分页查询

简介: Oracle数据库中日期的操作、主键自增与分页查询

# 1 oracle数据库中的日期

在Oracle数据库中,DATE类型的存储范围为公历前4712年1月1日至公历后 9999年12月31日,这个日期范围也被称为Oracle库中支持的“Gregorian calendar”。尽管在实际应用中一般不会涉及到这么早的历史记录和太远的未来,但这个日期范围可以覆盖现代时期所有的时间日期需求。


需要注意的是,Oracle DATE类型使用 7 个字节来存储它的值,其中包括世纪、年、月、日、小时、分钟和秒。而当你使用类似 "SELECT SYSDATE FROM DUAL;" 的语句查询数据库中的当前日期时,其返回结果可能会因为客户端的设置略有差异,但是总体来说其格式都是YYYY-MM-DD HH24:MI:SS形式的日期时间字符串。


对于TIMESTAMP类型,它能够存储更加精确的时间戳信息(包括毫秒/微秒/纳秒),一般用于要求高精度的时间计算和比较场景,但其存储范围只能覆盖从公元1970年1月1日00:00:01到公元9999年12月31日23:59:59.999999(六位小数)。

# 2 操作

*  插入日期

```sql

insert into table (create_time) values(to_date('2024-5-08 12:20:33','YYYY-MM-DD HH24:MI:SS'));

```

* 查询日期

```sql

select to_char(create_time,'YYYY-MM-DD HH24:MI:SS') from table;

```

* 修改日期

```sql

update table set create_time=to_date('2023-09-25 18:30:38','yyyy-mm-dd hh24:mi:ss') where id=1;

```

# 3 主键自增

* 首先,创建一个序列来生成唯一的数字ID

```sql

CREATE SEQUENCE my_seq START WITH 1 INCREMENT BY 1;

```

* 然后,在我们的数据表中创建一个触发器来捕获插入操作,并把所需的唯一 ID 填到对应字段里。

```sql

CREATE TRIGGER my_table_trigger BEFORE INSERT ON schema_name.my_table FOR EACH ROW

BEGIN

 SELECT my_seq.nextval INTO :new.id FROM dual;

END;

```

* 删除序列

```sql

DROP SEQUENCE my_sequence;

```

* 删除不同模式下的特定名称的触发器

```sql

DROP TRIGGER schema_name.trigger_name;

```

# 4 分页查询

* 每页五行数据,查找第二页

```sql

SELECT "id", "name"

FROM "person"

ORDER BY "id"

OFFSET 1*5 ROWS FETCH NEXT 5 ROWS ONLY;

```

目录
相关文章
|
29天前
|
SQL Oracle 关系型数据库
Oracle数据库优化方法
【10月更文挑战第25天】Oracle数据库优化方法
40 7
|
29天前
|
Oracle 关系型数据库 数据库
oracle数据库技巧
【10月更文挑战第25天】oracle数据库技巧
27 6
|
29天前
|
存储 Oracle 关系型数据库
Oracle数据库优化策略
【10月更文挑战第25天】Oracle数据库优化策略
21 5
|
2月前
|
存储 Oracle 关系型数据库
数据库数据恢复—Oracle ASM磁盘组故障数据恢复案例
Oracle数据库数据恢复环境&故障: Oracle ASM磁盘组由4块磁盘组成。Oracle ASM磁盘组掉线 ,ASM实例不能mount。 Oracle数据库故障分析&恢复方案: 数据库数据恢复工程师对组成ASM磁盘组的磁盘进行分析。对ASM元数据进行分析发现ASM存储元数据损坏,导致磁盘组无法挂载。
|
2月前
|
监控 Oracle 关系型数据库
Oracle数据库性能优化
【10月更文挑战第16天】Oracle数据库性能优化是
32 1
|
4月前
|
监控 Oracle 关系型数据库
"深度剖析:Oracle SGA大小调整策略——从组件解析到动态优化,打造高效数据库性能"
【8月更文挑战第9天】在Oracle数据库性能优化中,系统全局区(SGA)的大小调整至关重要。SGA作为一组共享内存区域,直接影响数据库处理能力和响应速度。本文通过问答形式介绍SGA调整策略:包括SGA的组成(如数据缓冲区、共享池等),如何根据负载与物理内存确定初始大小,手动调整SGA的方法(如使用`ALTER SYSTEM`命令),以及利用自动内存管理(AMM)特性实现智能调整。调整过程中需注意监控与测试,确保稳定性和性能。
331 2
|
5月前
|
存储 缓存 Oracle
Oracle数据库可扩展性和性能
【7月更文挑战第6天】
87 7
|
存储 SQL 负载均衡
达梦数据库与Oracle数据库:功能、性能和适用场景对比
数据库在现代信息技术领域中扮演着至关重要的角色。在企业级应用中,选择正确的数据库管理系统对于数据存储、处理和查询效率至关重要。本文将对比两个备受关注的数据库管理系统——达梦数据库和Oracle数据库,从功能、性能和适用场景等方面进行深入探讨,以帮助读者在选择合适数据库时做出明智的决策。
2819 1
|
SQL Oracle 安全
Oracle优化01-引起数据库性能问题的因素
Oracle优化01-引起数据库性能问题的因素
171 0

推荐镜像

更多