问题标签 [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 回答
1225 浏览

sql-server - MS SQL Server 中的序列并发问题?

我的 SQL Server 数据库中有一个序列

我在具有不是 IDENTITY 列的主键(让我们命名该 UserId)的表(让我们命名表用户)上使用此序列。我使用我的序列作为 UserId 的默认值,如下所示:

该数据库由 2 个不同的应用程序使用,两个应用程序都可以使用上述顺序将数据插入到该表中。它会导致任何并发问题吗?UserId如果并发请求,一个应用程序可以获取另一个应用程序生成的数据吗?如果是,那么如何?我能做些什么来预防?我做不到UserId IDENTITY

此外,当在表中插入新行时,会触发一个触发器,将新生成的行返回UserId给其中一个应用程序。会不会有问题?

0 投票
1 回答
222 浏览

postgresql - Postgres 序列对代码和 pgAdmin 的反应不同

我正在使用 Matlab-2017b 和 PosgreSQL(通过 ODBC 驱动程序)开展一个项目。在代码中有一些文件需要用数据库表的相应 id 号重命名。

在对序列当前值为 1 的场景进行一些测试时,测试结果显示了这种奇怪的行为。

如果 pgAdmin-4 Gui 用于打开序列属性并在代码执行后将当前值设置为 1,则序列返回 2。

通过 pgAdminGui 更改的序列当前值 新插入元素的 id 为 2

但是,如果运行来自 MATLAB 的以下查询:

然后执行代码,新插入的元素 id 的列为 1。

执行查询后新插入元素的行id

虽然代码已经被处理以正常工作,但仍有一些好奇这背后发生了什么?

0 投票
1 回答
70 浏览

sql - 如何使序列从 100 跳转到 150

如何射击序列从 100 跳到 150,然后是 152,153 等等。.

0 投票
0 回答
83 浏览

oracle - 使用序列中的 pk 生成更新父子表块

第 1 节:

第 2 节:

在会话 2 中,更新不会返回并一直等到会话 1 通过提交或回滚关闭事务。这不是我所期望的。原因似乎是从序列中生成 pk 的触发代码。如果我删除该序列代码,则会话 2 中的更新不会等待并在会话 1 的事务仍处于打开状态时返回。怎么了?

Oracle Database 11g 企业版 11.2.0.3.0 - 64 位生产

0 投票
2 回答
131 浏览

oracle - 关于 Oracle PL SQL 循环

今天做一些编码。遇到以下序列问题。PL/SQL 中的这段代码:

点击查看代码

没有按预期工作,即序列没有按我的意愿增加 10 - 仅增加 1。这段代码:

点击查看代码

工作正常。序列按预期增加 10。

为什么要这样解释?

0 投票
1 回答
5108 浏览

postgresql - 将自动增量列添加到按日期排序的现有表中

我在数据库中有一个名为“tickets”的现有表,其中包含以下列:

我需要添加新的自动增量列ticket_id但要生成的值应根据“日期”列值。

我试过这个:

问题是,它以某种奇怪的顺序生成“ticket_id”值,看起来它是基于作为表主键的“id”列。

是否可以生成按“日期”排序的序列值?这很重要,因为“ticket_id”需要根据生成票的顺序显示。

0 投票
1 回答
156 浏览

postgresql - About the implementation details of PostgreSQL sequence

I am interested in the implementation details of sequences in PostgreSQL, the reason being that they're used in the background for the SERIAL type. I have reviewed the source file here (found in Google search: "postgresql source code sequence"), although it is not clear to which version of PG this file relates to. I understand the general code flow in the function nextval_internal, which is the heart of the issue, but PG's code base is large and I just can't afford the time to research this issue to its fullest.

I'm interested to know:

  • What is the persistence policy with regard to sequences? How are they loaded when the PG server starts, and how are they persisted during the server's lifetime to prevent mishaps after a server crash/power failure?
  • What are the runtime costs associated with using sequences? Do they always incur some kind of disk I/O, or never at all?
  • What are the deficiencies in using sequences which I should attend to when defining tables and writing application code?
0 投票
1 回答
946 浏览

sql-server - 需要帮助。SQL Server nextval 查询的问题

我对 SQL Server 数据库中的 SQL query-nextval 有疑问:

无法绑定多部分标识符“applicationauth.nextvalue”。

知道有什么问题吗?

这是查询:

(等等等等 ...)

我收到以下错误消息:

消息 4104,级别 16,状态 1,行 2
无法绑定多部分标识符“applicationauth.nextvalue”。

消息 4104,级别 16,状态 1,第 9 行
无法绑定多部分标识符“applicationauthseq.nextval”。

(.... 等等等等)

0 投票
2 回答
90 浏览

sql - 在 Oracle 中对 SELECT 和 CREATE 都不进行排序

sequence在 Oracle 11g Express Edition 中使用时遇到问题。它既不可访问也不被创建。我试过这个查询来获取NEXTVAL序列。

它显示错误

ORA-02289: 序列不存在

然后我尝试CREATESYNONYM上面的序列如下

它返回

ORA-00955: 名称已被现有对象使用

为什么会这样?

0 投票
1 回答
730 浏览

postgresql - Postgres - BDR 复制 - auto_increment 主键的问题

我有一个具有 2 个节点(多主复制)的 Postgres BDR 集群。我创建了一个具有自动增量主键的表,如下所示:

我从 node1 在该表上添加了一些值:

现在,当我尝试从 node2 向该表中添加另一个值时,我收到该错误: