问题标签 [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 投票
1 回答
279 浏览

sql - 在 SQL 中选择 SEQUENCE:FROM 关键字未在预期的位置找到

我在 SQL 中创建了一个序列:

CREATE SEQUENCE MYSEQ increment by 5 start with 10;

当我尝试选择序列时: select sequence MYSEQ.nextval from DUAL;

我收到错误:ORA-00923:在预期的地方找不到 FROM 关键字 00923。00000 -“在预期的地方找不到 FROM 关键字”

任何帮助,将不胜感激

0 投票
1 回答
62 浏览

postgresql - 分析生产 Postgres UPDATE - RETURNING 查询缓慢

我们正在运行一个平均有 10k 活跃用户的网络应用程序,由 6 个网络节点提供服务,并由 Postgres 9.4.6 提供支持。

我们的监控工具发现了以下运行缓慢的查询,该查询通常具有不可接受的响应时间,在过去几天偶尔会导致中断。

这是一个小表,基本上是内部序列实现(遗留应用程序),跟踪每个其他表的唯一 ID:

该表只有大约 200 条记录。我们的 webapp 节点使用这个查询来获取一批专门供自己使用的 ID:

我需要找出为什么上述查询的性能在过去几天显着下降:平均大约 1 秒,但有时也需要 30-60 秒。在高负载期间,所有节点都在并行地对多个连接执行完全相同的查询。

更新:查询由单个(慢)查询持有的锁(来自 pg_lock、pg_class 和 pg_stat_activity)的信息表明,它与正在等待的其他事务的查询完全相同。因此,我们有同时尝试更新(增加 ID 值)同一行的事务,因此一个具有所有所需锁的活动会阻塞所有其他的。

否则数据库是健康的,我们的运营团队没有发现任何关于存储、内存或连接的问题;然而,另一个表的大小最近达到了 64GB,这可能是相关的。

有谁知道什么会导致这种性能下降?与以前相同的负载,但这个瓶颈查询比以前慢了约 5 倍。

0 投票
1 回答
189 浏览

oracle - 实现一个按函数值递增的序列

我正在寻找创建一个简单的序列:

但是,我想使用由 Java 端实现的某些因素确定的函数来半随机化递增值。

我认为测试这个的第一步可能看起来像这样:

我试过这个:

我意识到这很荒谬..但必须有某种方法可以做这样的事情。任何指针?

0 投票
1 回答
18 浏览

database - 遇到数据重复时跳过列 ID

我有一个名为的表email_recipientsID只要email.

0 投票
1 回答
66 浏览

postgresql - Postgres:CREATE TABLE 中的 DEFAULT 和数据库转储中的 ALTER TABLE 之间的区别

在使用 创建的数据库转储中pg_dump,一些表DEFAULT在语句中有 s CREATE TABLE,即:

但其他人有一个额外的ALTER声明:

这是什么原因?所有顺序字段都是用 type 创建的SERIAL,但在转储中它们看起来不同,我猜不出任何规则。

0 投票
2 回答
89 浏览

sql - Auto Increment FK 如何更新?

好的,所以我目前正在为大学作业开发 Oracle 11G 速成版。我遇到了一个关于如何在以下父表中自动递增和更新的问题。所以我有一个地址表,然后是一个城市表。这里是地址SQL代码

如您所见,我将城市表作为外键引用,这是下面的城市 SQL 表代码:

插入东西时,城市代码使用序列自动递增:

所以很简单,我通过这样的城市 ID 自动递增所有输入:

但我的问题是,当我在其父表(例如地址表)中引用它时,我如何引用该行数据的 ID 并确保提取正确的 ID 而无需手动输入?

这是简单的插入地址,目前仅引用 nextval,但我不相信它会从该 ID 中提取该行数据。我如何有效地从子表中提取该 ID 并自动将其正确放入父表中?

0 投票
1 回答
3603 浏览

postgresql - 在 postgres 中使用表标识的最后一个值重置标识列

我想将我现有的列更改为 Postgres 数据库中的 Auto Identity。
我使用下面的脚本来设置自动标识列并设置默认从 1 开始。
但在这里我想将标识列值重置为表的最后一个值。
如果您有任何解决方案,请告诉我。

在这里,我正在设置这样的东西:

0 投票
3 回答
4578 浏览

postgresql - 错误:在 Postgres 中发现多个拥有的序列

我正在为Patient表的现有列设置一个标识列。
在这里,我想使用GENERATED ALWAYS AS IDENTITY

所以我使用以下语句设置身份列(以前是serial):

对于现有的患者表,我总共有 5 条记录。(patientId1到5)
当我在身份设置后插入新记录时,会抛出如下错误:

即使在重置标识列之后,我仍然得到同样的错误。

如果您有任何解决方案,请告诉我。

0 投票
1 回答
299 浏览

sql - 如何更改 PostgreSQL 序列的下一个默认值?

我有一张表,其中 ID 序列类似于 01,02 等等(我有一些预先插入的值)。当我尝试在那里插入新行时(没有明确指定 ID,而是指定其他列的值),它告诉我默认值为“1”,与“01”相同,无法插入。怎么解决,谢谢!

0 投票
0 回答
32 浏览

postgresql - 根据外键更新唯一 ID(以 1 开头),唯一 ID 将再次以 1 开始下一个外键

我需要使用唯一 ID(CHARGE_NUMBER)再次更新 product_details 表,对于每个 batch_ID,下一个批次 ID 的唯一 ID 将再次以 1 开头

我已经使用序列编写了一个代码。

但是有一个问题“如果多个并发事务来了怎么办?它可能不会给出正确的结果”

一个配置文件在 inv_gen_trans 表和以下具有一些批次 ID 3 - 4 批次 ID 的配置文件是 product_details 表中的预期输出