- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有条件地向 PostgreSQL 表中插入一行并手动指定 ID:
INSERT INTO foo (foo_id, foo_name)
SELECT 4, 'My Name'
WHERE NOT EXISTS (
SELECT * FROM foo WHERE foo_id = 4
);
这不会增加生成下一个 foo_id
的序列。
只有在上述查询中实际插入一行时,如何运行 SELECT nextval('foo_foo_id_seq'::regclass);
?
最佳答案
您可以使用 setval()
如果要更改序列以继续“强制”值,可以在选择中使用 setval()
:
INSERT INTO foo (id, foo_name)
select *
from (
VALUES (setval('foo_id_seq', 42), 'My Name')
) as t (id, foo_name)
WHERE NOT EXISTS (
SELECT * FROM foo WHERE id = 42
);
如果插入一行,序列将以 43 继续。
如果当前序列值已经大于 43,这将在以后其他事务插入到表中并依赖于序列时给您带来问题。
如果你想从它当前的任何值推进序列,你可以使用这样的东西:
INSERT INTO foo (id, foo_name)
select id, foo_name
from (
VALUES (42, 'My Name', nextval('foo_id_seq'))
) as t (id, foo_name, nextval)
WHERE NOT EXISTS (
SELECT * FROM foo WHERE id = 42
);
关于postgresql - 如果插入一行,则在 PostgreSQL 中推进序列 (`nextval` ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35199543/
我正在自定义 phpUnderControl 构建文件以使用 symfony propel:build-sql 功能生成要为每个构建(不是每个测试)加载的 .sql 文件。我遇到的情况是,生成的 .s
我有 table : Article: ID | TITLE | CONTENT 1 | aaa+s | sdsd 2 | ccc+a | sdsda 3 | aaa+s | dsdsd 4
我创建了一个本地应用程序,它使用 ajax 从 SQL 数据库调用结果。 系统运行良好,但是如果使用 ' 进行某些搜索,则系统失败并且我收到以下错误“注意:数组到字符串的转换 in..” 这是我的 J
我在我的 PHP 应用程序中使用 propel ORM。 通过阅读文档,我不知道如何发出这种类型的请求: SELECT x FROM table where col1 = 'xxx' and not(
我正在尝试使用 Propel 1.6 使用自定义“order by”进行查询 select * from myObject ORDER BY FIELD(id, 3, 11, 7, 1) 这不起作用:
我有一个 MySQL 表,其中包含从用户到用户的所有消息: id | to_id /*user_id*/ | from_id /*user_id*/ 1 | 32 |
我正在使用 symfony 开始一个新项目很容易与 Doctrine 集成和 Propel ,但我当然需要做出选择.... 非常感谢。 编辑:感谢所有回复,有用的东西。这个问题没有真正正确的答案,所以
我有一个产品对象和评级对象,它们代表对产品的评级。评级有一个名为“value”的属性,它是一个从 1 到 5 的整数。 对于给定的产品,我想获得所有评级值的平均值。我知道如何获得所有评级: $prod
我正在通过 MySQL Server 5.5.28 使用与 Propel 1.6.7 集成的 Symfony 2.1.6 框架作为数据库 ORM,我在将数据库排序规则设置为 utf8_unicode_
我正在尝试使用 Propel 2 对数据库进行逆向工程。但是每次我尝试运行 model:build 命令时,我都会收到以下错误: [Propel\Generator\Exception\Invalid
我正在尝试获取 propel 中列的总和。我的代码 $c = new Criteria(); $c->add(valuePeer::OWNER_ID, $this->getId()); $c->add
我们有一个包含所有产品的表格和一个包含所有订购商品的单独表格。订购的商品基本上是已订购产品的副本,与其源产品相关(通过外键)和仅与订购商品相关的附加数据,如订购数量。 通过这种方式,我们确保了订单数据
有没有人建议使用外部 ORM,如 Doctrine/Propel 而不是 Zend Framework 中的默认 Zend_Db_Table? 我认为您的回答和理由对整个 ZF 社区都很有值(valu
我正在尝试按年份对现有表进行分区。(没有现有分区) alter table test_table PARTITION BY EXTRACT (year FROM date_c); 但是好像有一些错误
我有大型 MySQL 数据库。我想一次获取 100 行,直到处理完所有数据库。 protected function doEcho($msg){ static $time, $start;
我正在使用 Symfony 1.4.8 和 Mysql 5.5 运行时出现此错误 symfony 推进:构建全部 You have an error in your SQL syntax; check
我想将自定义 sql 子查询插入到常见的 Propel 标准中。子查询包含用户输入,因此必须对这些输入进行转义。我怎样才能实现这一点? 我有这样的东西(简化): $c = new Criteria()
我是一名优秀的程序员,十分优秀!