问题标签 [currval]

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 回答
66 浏览

database - 在postgreSQL中用currval计算年龄

我创建了一个带有 People 表的数据库,其中包含人们的所有信息,例如他们的名字、姓氏、性别、出生日期和电子邮件。此表中的每一行都有一个连续的 peopleID。我正在尝试创建一个存储过程和触发器来自动计算刚刚输入的人的年龄。我正在尝试使用 currval 来获取最后插入的 peopleID。

这是我的存储过程:

这是我的触发器:

这是我尝试使用插入语句实现它时遇到的错误:

0 投票
0 回答
231 浏览

java - 在预言机序列中存储计数器

我需要关于 Java ejb Web 服务的传入请求计数器的建议。部署 Web 服务的应用服务器有 4 个节点,因此传入的请求可以在 4 个节点中的任何一个上处理,我决定将计数器值存储在 Oracle 数据库中。我通过调用设置了当前的请求数,select SEQPACKSCYCLETOT.NEXTVAL from dual它工作正常。

但是我还需要显示当前的计数器值,这是一个问题。当我打电话时,select SEQPACKSCYCLETOT.CURRVAL from dual有时会出现异常sequence SEQPACKSCYCLETOT.CURRVAL is not yet defined in this session

它是关于什么会话以及如何使用它?这是代码片段:

0 投票
2 回答
2782 浏览

postgresql - How can I use PostgreSql's CURRVAL / RETURNING from another php file?

I'm running an INSERT query from one php file, but then I need to get the last inserted id from an external php file so as to run another query based on that id. How can I pull this off using CURRVAL or RETURNING? From the external php file, if I do something like

$result = pg_query($db,"SELECT CURRVAL('app.example_id_seq'), ... "); I get no results.

0 投票
1 回答
36 浏览

postgresql - PostgreSQL 在插入期间获取新 id

我需要在记录插入时创建一些客户编号,格式为“A”+ 4 位,基于 ID。所以记录 ID 23 -> A0023 等等。我的解决方案目前是这样的:

这完美地工作。现在我的问题是......这是“安全”的,因为 currval(seq)+1 保证与 id 列将接收到的相同?我认为它应该在语句执行期间被锁定。这是正确的方法还是有任何快捷方式可以直接访问要创建的 ID?

0 投票
2 回答
227 浏览

oracle - 创建表中的序列?

所以我在考试中失败了,分数为 60%,需要 3% 才能通过,我想知道 create table 语句中的序列,问题是我们认为 => 在数据库“存在”序列中,例如 SEQ_001 并用于例如=>

在 1z0 071 的主题中写道 =>

而且我知道从 12c 创建表中的序列是可能的,但在以前的版本中是不可能的,所以我怎么知道哪个版本适用于这个问题以及如何检查存在的序列是否与 nextval 一起使用,存在并不意味着它被使用(我是关于创建后的 nextval ,如果没有 currval 可以给出错误)。在这种类型的问题中,我感到困惑。

0 投票
0 回答
22 浏览

database - 如何插入具有从Postgres表中的最大值追赶的串行列的行

我有一个如下表:

在不更改表的属性的情况下,是否有任何干净的方法可以将新行插入到该表中(已经有值,所以“ID”不是从 1 开始)使得“ID”列不断增加?目前,如果我在表中插入一个新行Charlie(不指定 ID 列):

会变成

然后当我不断插入时,串行计数器不断增加。有什么办法可以从3开始吗?我试过currval(),nextval()lastval(),但它们似乎都从 1 开始,即使我已经有一个带有值的序列列。如果我必须最终更改此表的属性,我可以通过任何方式更改它,以便在插入新行时不必担心序列列?

0 投票
1 回答
25 浏览

sql - 有没有办法在父查询中添加一个字段,该字段将随着查询遍历子查询中生成的所有值而增加?

我想我有一个缺少真正主键的表,我需要在输出中创建一个。我无法修改表格。

我需要运行一个选择查询来生成一个值列表(list_A),然后获取这些值并查询它们以显示与它们相关的所有记录。从这些记录中,我执行另一个选择以提取一个现在可见的名为 list_B 的列表。从 list_B 中,我可以搜索它们以显示与原始列表 (list_A) 相关的所有记录,其中许多记录缺少 list_A 中的值,但仍需要计算。

到目前为止,这是我的过程:

  1. 我声明了一个名为“temp_key”的序列,它从 1 开始并以 1 递增。
  2. 我向父查询添加了一个名为“temp_key”的字段,以便它有望显示结果记录与原始 list_A 子查询的哪个元素相关。
  3. 我遇到了麻烦,因为我不知道如何使 temp_key 随着 list_A 子查询从列表中所有值的开头移动到结尾而增加。

就像现在一样,上面的查询不起作用,因为似乎没有办法使 temp_key 的当前值向上递增,因为它遍历最初从最低级别子查询 (list_A) 生成的列表中的值。

例如,list_A 中可能只有 10 个值。并且输出可能有 100 条记录,全部标记为 1 到 10,其中许多值在 list_A 字段中缺失值。但是它们仍然需要标记为 1 到 10,因为 list_B 的值连接了这两个集合。

0 投票
2 回答
103 浏览

sql - 如何使用 currval 获取所有序列的值?

例如:有 3 个序列 ( seq1, seq2, seq3),我想进行一个查询,显示它们的名称和当前值?

基本语法是

但是如何展示它们的价值呢?

0 投票
0 回答
37 浏览

postgresql - CurrVal 函数在 Postgres 嵌入式数据库中返回 null

我正在尝试在 postgres 嵌入式数据库中使用 currVal 函数来获取我在同一会话的插入语句中插入的值。请在下面找到相同的代码。

学生表定义:

查询插入学生:

查询获取 id 列:

两个插入查询都在单个会话中运行,但是在使用 currVal 函数获取插入的 id 时我得到空值。

相同的查询适用于实际数据库,但不适用于嵌入式扩展。我正在为嵌入式数据库使用 postgis docker 映像。