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

2023-11-16

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 操作

  • 插入日期
insert into table (create_time) values(to_date('2024-5-08 12:20:33','YYYY-MM-DD HH24:MI:SS'));
  • 查询日期
select to_char(create_time,'YYYY-MM-DD HH24:MI:SS') from table;
  • 修改日期
update table set create_time=to_date('2023-09-25 18:30:38','yyyy-mm-dd hh24:mi:ss') where id=1;

3 主键自增

  • 首先,创建一个序列来生成唯一的数字ID
CREATE SEQUENCE my_seq START WITH 1 INCREMENT BY 1;
  • 然后,在我们的数据表中创建一个触发器来捕获插入操作,并把所需的唯一 ID 填到对应字段里。
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;
  • 删除序列
DROP SEQUENCE my_sequence;
  • 删除不同模式下的特定名称的触发器
DROP TRIGGER schema_name.trigger_name;

4 分页查询

  • 每页五行数据,查找第二页
SELECT "id", "name"
FROM "person"
ORDER BY "id"
OFFSET 1*5 ROWS FETCH NEXT 5 ROWS ONLY;
<!--oracle驱动-->
        <dependency>
            <groupId>com.oracle.database.jdbc</groupId>
            <artifactId>ojdbc8</artifactId>
            <version>21.1.0.0</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/com.oracle.database.nls/orai18n -->
        <dependency>
            <groupId>com.oracle.database.nls</groupId>
            <artifactId>orai18n</artifactId>
            <version>21.1.0.0</version>
        </dependency>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

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

  • SQL Server 查看主键

    有没有办法在 sql server 中为视图提供主键 我知道在oracle中这是可能的 我不关心更新它的只读视图 但其他人正在 ms access 中使用它 所以我希望显示我知道正确的约束 是的 您可以创建一个索引视图 http msdn
  • 使用递归 CTE 遍历父/子树?

    我被 cte 困住了 我想要一个查询 其中第一个父级为空 上一个父级的子级将成为下一个父级的父级 依此类推 WITH RESULT PARENT CHILD TNAME LEVEL AS anchor SELECT E PARENT GEN
  • CS0246 找不到类型或命名空间名称“ErrorViewModel”(您是否缺少 using 指令或程序集引用?)

    我收到 CS0246 错误代码 我正在做一个 MVC net core 项目 我正在将 Razor 合并到我的 C 代码中 我在进行构建时收到此错误 我在最后一行收到错误 有人能帮我解决这个问题吗 global Microsoft AspN
  • 对于 IN 列表中的缺失值返回 NULL

    我有一个这样的表 id val 1 abc 2 def 5 xyz 6 foo 8 bar 和一个像这样的查询 SELECT id val FROM tab WHERE id IN 1 2 3 4 5 返回 id val 1 abc 2 d
  • 限制相同的数据条目

    我是 SQL 新手 我有两张桌子 一张放冰箱 一张放食物 一台冰箱只能存放 5 种食物 所以我想知道是否有办法限制食物表中只有 5 个相同的冰箱 ID 条目 没有直接的方法来强制执行这样的约束 我能想到的最好的是 有一个 冗余 列food
  • MySQL 更新具有多个值的查询

    我在数据库中有一个表 其记录如下 match id guess result 125 1 0 130 5 0 233 11 0 125 2 0 我的用户为每场比赛选择一个猜测 我有一个函数可以根据比赛的结果计算猜测的结果 如果猜测正确 结果
  • Oracle sqlldr是否并行处理多个INFILE

    我正在使用 sqlldr 将数据加载到 Oracle RAC 在 Linux 上 并且我正在尝试提高数据加载的性能 我正在使用 直接路径 并且为 sqlldr 设置了 parallel true 而且 由于我的服务器是多核的 所以默认情况下
  • SQL 选择 ID 相同的多个最大行

    我在这方面一次又一次地挣扎 但无法让它发挥作用 在这些论坛上呆了几个小时 数据集 Row Date AccountID Column 1 1 21 02 2013 0 30 A0M8FA1003YP 2 21 02 2013 0 30 A0
  • postgresql 中的咨询锁超时

    我正在从 ORACLE 迁移 目前我正在尝试移植此呼叫 lkstat DBMS LOCK REQUEST lkhndl DBMS LOCK X MODE lktimeout true 这个功能 http docs oracle com cd
  • 无法使用symfony2连接数据库oracle

    我需要的 我需要将oracle数据库与symfony2连接 我已经通过 php m 检查过 oci8 pdo odbc odbc 这是我关注的链接https gist github com johnkary 6481664 https gi
  • R 版本 4.0.0 上的 ROracle

    当尝试使用 ROracle 时 我收到以下错误消息 gt library ROracle Error package or namespace load failed for ROracle package ROracle was inst
  • 从关键字后的文本中提取字符串

    我想从 SQL 字段中关键字后面的文本中提取内容 我有一个名为Description在表中 该字段的内容是 asdasf 关键字 狗 aeee 关键字 猫 ffffaa 关键词 狼 我想提取并保存 关键字 之后的文本 在本例中dog cat
  • 如何在 Hibernate 中使用 SELECT 进行 INSERT

    我需要在休眠中实现以下请求 insert into my table max column values select max id from special table where 如何在休眠中使用注释来做到这一点 Special tab
  • 我是否需要 SQL Server 数据库项目中链接服务器的数据库引用?

    在我的数据库项目中 我添加了对链接服务器的引用 当我在视图中使用此链接服务器并尝试构建数据库项目时 SSDT 报告错误 因为它无法理解对链接服务器上引用的任何架构的引用 LinkedServer DB1 dbo Table1 上面的代码会返
  • R dbGetQuery 与动态字符串

    From 这个帖子 https stackoverflow com questions 3416973 dynamic string in r and 这个帖子 https stackoverflow com questions 34496
  • 将多个子查询作为值插入

    假设我要插入一个有很多 fk 的表 只是为了在下面解释一下错误的说法 insert into mytable values somevalue somevalue select id from othertable1 where condi
  • 将具有重复值的数据插入 Postgresql

    我需要在 postgresql 中插入数据集 INSERT INTO table subject topics exams name of subject section topic subtopic VALUES Algebra Math
  • 在 SQL Server 中执行嵌套 case 语句逻辑的最佳方法

    我正在编写一个 SQL 查询 其中返回的一些列需要根据很多条件进行计算 我目前正在使用嵌套的 case 语句 但它变得混乱 有更好的 更有组织性和 或可读性 方法吗 我使用的是 Microsoft SQL Server 2005 一个简化的
  • SQL Server 2008中的分割函数

    I have Table1像这样的列 ID Name 1 MSSQL 2 MySQl 3 Oracle In Table2 我有一个像这样的专栏 Databasename 1 3 2 1 2 我的输出应该是 Databasename MSS
  • 通过 OCI 调用 Oracle 存储过程并使用 C++ 中的 out ref 游标返回结果

    我想使用 OCI 接口从 C 调用 Oracle 存储过程 并使用 out SYS REF CURSOR 作为过程的参数来迭代结果 我是 OCI 新手 所以可能会遗漏一些简单的东西 大部分代码取自这里 我的存储过程是 CREATE OR R

随机推荐

  • spring boot 与mybatis 整合配置 日志打印

    application properties mybatis check config location true mybatis mapper locations classpath mapper xml mybatis type ali
  • FCRP-D---帆软官网模拟题,报表模块

    1 要求 外观设计 ds1 ds2 实现根据所选的类别 出现该类别的产品 配置控件 隔行换色 金额大于1000显示红色并加粗 效果 没有选择产品类别 产品名称可以选择全部 2 要求 外观设计 采用决策报表 ds1 ds2 ds3 ds4 1
  • C++11中的std::bind

    文章转载自 http www jellythink com archives 773 看看这段代码 这几天学习Cocos2d x 看到了以下的一段代码 new callbacks based on C 11 define CC CALLBA
  • centos下vim使用

    vi的使用 基本上vi可以分为三种状态 分别是一般模式 编辑模式和命令行模式 各模式的功能区分如下 一般模式 以vi打开一个文件就直接进入一般模式了 这是默认的模式 在这个模式中 你可以使用上下左右按键来移动光标 你可以使用删除字符或删除整
  • 【算法】欧拉函数公式证明

    定义 欧拉函数 n varphi n n 表示小于等于 n n n且与
  • 正在找副业怎么找?空余时间找副业怎么找?

    很多人平时都是在企业上班 一谈到找副业 还真不知道找啥 或者就是利用空余时间去看看附近有什么临时工需求 其实这不是副业 只能算是兼职 还是靠出卖时间的廉价劳动力所得报酬的兼职 寻找合适的副业 方法主要有三个 1 从自己的主业出发 延伸出自己
  • 企业实施MES系统前后的10大效果对比,一文了解mes功能!

    什么是MES系统 MES信息化管理平台 包含了生产计划 采购 物流 销售 核算等模块 能够为我们带来可视化管理 可共性的管理 实施的管理等等 制造执行系统主要是针对车间级的 比如 我们可以对生产线进行实时监控 也就是说整个的生产过程监控 第
  • 概率论入门

    概率论入门 导论 概率论解决随机问题的本质 就是把局部的随机性转变为整体上的确定性 概率论的产生 能让我们对未来随机事件发生做出数学上的确定性判断 这是概率论的思想基石 概率论作为一种数学工具的基本思路 正式基于这种整体的 全局性的思考框架
  • 无理数无理性的证明问题

    问题1 求证 2 sqrt 2 不是有理数 证明 假设 2 sqrt 2 是有理数 可设 2 pq sqrt 2 frac p q p q N p 12289 q in N q gt 1 q gt 1 且 p q p 12289 q互质 则
  • 用AI给图片上色 在线将黑白照片处理成彩色照片工具(干货)

    一个在线的网址 用此工具可以给黑白照片上色 刚刚测试了一下 效果算是可以吧 图片直接进行拖拽 或者是在页面点击添加 处理后点击download即可 AI智能上色 效果看起来还不错吧 下面是测试的 图片转换地址 https imagecolo
  • timesten常见的一些简单问题

    环境为 instance name为eservice安装目录为 home timesten TimesTen 下面这些问题是针对新手而言的 通过这些问题可以帮助刚接触timesten的人可以快速配置timesten more 如何启动 ho
  • 成为优秀程序员的方法就是抛开编程?

    原文 How To Become a Better Programmer by Not Programming 作者 Jeff Atwood 我在2006年写过一篇题为 Programmers as Human Beings 程序员 亦人类
  • Python自动化操作Excel表格

    目录 一 Python打开及读取Excel表格内容 二 Python向Excel表格中写 三 批量调整字体 样式 四 编程生成Excel内图表 一 Python打开及读取Excel表格内容 打开以及读取Excel表格内容 列 column
  • 查看Google Chrome浏览器里的Cookie 文件

    文章目录 环境 步骤 扩展 chrome postman自动带入cookie 参考 平时访问各种网站查阅资料时 总是会弹框询问是否可以保存Cookie信息等 于是就好奇 看下Cookie文件存在哪里的 本文主要是基于这个问题出发 不了解co
  • MAVEN常用命令

    Maven库 http repo2 maven org maven2 Maven依赖查询 http mvnrepository com Maven常用命令 1 创建Maven的普通java项目 mvn archetype create Dg
  • Apache Derby 数据库 - 教程

    阿帕奇德比 本文介绍如何安装 Apache Derby 数据库 如何启动 Derby 服务器 如何通过 Java 连接到 Derby 以及如何使用 Derby 命令行工具发出 SQL 语句 还解释了将 Apache Derby 安装为 Wi
  • BCompare 4 key SN 亲测可用

    支持BCompare 4 2 32位 亲测可用 key w4G in5u3SH75RoB3VZIX8htiZgw4ELilwvPcHAIQWfwfXv5n0IHDp5hv 1BM3 H1XygMtiE0 JBgacjE9tz33sIh542
  • 《机器学习》理论——速读学习2 常用方法(3)

    机器学习 理论 速读学习2 常用方法 3 该系列文章系个人读书笔记及总结性内容 任何组织和个人不得转载进行商业活动 time 2021 12 24 学习目标 我需要了解神经网络除了工程化部分之外的更多内容 以便于在实际有效数据中可以获得抽象
  • ArcGis Server开发Web GIS新手体验(一)

    ArcGIS Server是ESRI公司最新推出的服务器端品 主要可以实现两大功能 强大的Web GIS系统的开发 分布式GIS系统的开发 ArcGIS Server其内核与ArcGIS Desktop和ArcGIS Engine一样 都是
  • Oracle数据库中日期的操作、主键自增与分页查询

    1 oracle数据库中的日期 在Oracle数据库中 DATE类型的存储范围为公历前4712年1月1日至公历后 9999年12月31日 这个日期范围也被称为Oracle库中支持的 Gregorian calendar 尽管在实际应用中一般