问题标签 [database-sequence]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
392 浏览

java - 从 java hibernate vs sql developer 发出时,Oracle 序列返回不同的值

我遇到了这个非常奇怪的问题,当从 java/Hibernate 与 SqlDeveloper 工具发出时,oracle 序列返回非常不同的值。

以上返回 1177248345。我将日志级别转到跟踪以查看正在发出的实际查询,它是:select SPS_PARAM_ID_SEQUENCE.nextval from dual。现在我从 sql developer tool 中针对相同的序列发出相同的查询,它返回:39241615它小了 2 个数量级!此外,这是我期望的准确值。

我确认两者都在相同的环境中针对相同的数据库模式等发出请求,但由于某种原因,Hibernate 获得了更高的价值。有没有人遇到过类似的问题。休眠以某种方式“填充”序列吗?

0 投票
3 回答
17964 浏览

sql - Db2:如何更新序列的当前值

我们在 Db2 数据库中使用序列。最近,我们将数据从 AIX 服务器迁移到了 Linux 服务器。在此期间,该序列的最新编号没有移动到 Linux 系统。结果,我们现在看到重复值。

以下是我们如何使用序列:

Linux 上序列的当前值为 100092142。如何将其更新为 AIX 系统上的当前值,即 (100110960)?

0 投票
1 回答
964 浏览

sql - postgresql nextval 结果不正确

恢复数据库后,我运行下一个查询

我必须得到 max id + 1 类似 ( select max(id) + 1 from table) 的东西,但是下次我调用它时我只会得到 max id 结果是正确的。这个问题只发生在两张桌子上,其余的都可以。我使用 PostgreSQL 10。

任何想法可以是什么。

0 投票
0 回答
232 浏览

sql - 生成唯一 ID 附加序列

我在 SQL Server 中遇到了一个挑战,非常感谢您的帮助。

我们有一个唯一的值,我们将其存储在记录的字符串字段中,使用户更容易识别它,例如 ABC001 或 XX01 或用户想要输入的任何其他内容。

当为属于特定上下文(例如组织)的所有记录更新单个记录时,我们验证该值是唯一的 - 因此属于特定组织的所有记录必须是唯一的。

挑战在于我们有一个用例,其中使用 INSERT SELECT 方法的组合复制了许多记录,这种方法从一个组织到另一个组织非常有效。

问题是,当我们将例如 1000 条记录从一个组织复制到另一个组织时,某些唯一 id 值可能是相同的,从而破坏了唯一要求。

所以问题是我们如何使用 INSERT SELECT 方法修改动态冲突的“唯一 id”值,如果 ID ABC01 已经存在,则将其保存为 ABC01 (1)、ABC01 (2) 等,直到它是以最有效的方式独一无二?

预先感谢您的回复。

0 投票
1 回答
215 浏览

sql - 为什么我不能在 postgres 中用双引号引用我的序列?

我在 postgres 中创建了序列。

现在我正在尝试从序列中查询下一个值。

但这给了我错误,该序列不存在。但是,当我在 sequence_name 中使用单引号时,它可以正常工作:-

但是根据sql 中单引号和双引号之间的区别,双引号可以与任何用户定义的 sql 对象一起使用。因此,因此 my_sequence 也是用户定义的对象。那么,为什么我无法访问它?

0 投票
1 回答
127 浏览

sql - 我什么时候应该按顺序使用 CYCLE?

我在 PostgreSQL 数据库中使用序列将行插入表中。

在创建序列时,我从未CYCLE在它们上使用过该选项。我的意思是它们可以生成相当大的数字(据我记得大约为 2^63),我真的不明白为什么我希望序列回到零。所以我的问题是:

CYCLE创建序列时应该何时使用?

你有一个有意义的例子吗?

0 投票
1 回答
1022 浏览

oracle - Oracle 序列不同步/不匹配表

我们有一个 Oracle 11.2 数据库,其中有多个(如果不是全部)序列不同步。他们的最后一个数字与其相关数据库表的最大数量不匹配。

我似乎无法在网上找到任何可能的原因,但想到的一种可能性是 - 是否可以在不恢复序列的情况下恢复数据库?我的理论是生产副本放置在 QA 数据库上,并且序列从未更新。

0 投票
1 回答
122 浏览

snowflake-cloud-data-platform - 如何在雪花数据仓库中创建循环序列

我正在像 Oracle 一样在雪花数据仓库中寻找带有循环的序列。我猜雪花数据仓库没有这个内置的。知道如何实施吗?

0 投票
2 回答
1451 浏览

sql - 如何找到主键序列和主键最大值

我知道这个问题有点傻,我需要运行这些查询来查看这些值是否不同步,但我得到一个错误,比如“关系不存在”:

我有一个名为“Audit”的表,主键列为“auditID”。当我运行第一个查询时,我得到了结果:

但最大值应超过 10000。

然后我运行第二个查询,我得到错误“关系“the_primary_key_sequence”或“Audit_auditID_seq”不存在”。如何检查是否存在任何主键序列?

错误:

0 投票
2 回答
3057 浏览

oracle - Oracle 12.2 - NOPARTITION 特性的替换

我有 Oracle 版本 12.2.0.1.0

我们有通用脚本,它创建需要为不同对象重用的序列(通过重命名序列名称):

在我删除之前,此脚本无法处理以下错误NOPARTITION

我在 AskTom 中发现12.2 不支持 NOPARTITION

以前版本的数据库中有各种不再相关/受支持的东西

为什么它不受支持和/或此功能的替代品是什么?

如果没有替代品,您能否说明为什么不应使用此功能?