问题标签 [postgresql-9.5]
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.
postgresql - AFTER INSERT OR UPDATE 触发器违反非空常量
在文字游戏 SQLite 数据库中,我想以明文Q
形式存储简短的单词和带有很少字母的单词(以便能够在应用程序中列出它们)。
否则我只想存储一个单词的 MD5 哈希(这样应用程序数据库就不会轻易被盗)。
在后端,我使用 PostgreSQL 9.5 并准备了存储函数:
这似乎工作正常:
然后我创建一个表来存储大写的英文单词及其散列值和 INSERT OR UPDATE 触发器:
不幸的是,当尝试插入测试值时,我得到了错误:
更新:
当我按照理查德的建议AFTER
改为时BEFORE
(谢谢!) -
然后我不幸遇到另一个错误:
postgresql - 返回作为保留关键字的表列名称?
我正在创建这个返回表格的函数。我在下面代码的第 9 行有这个问题,我认为“位置”和下面的“属性”列是主要问题。我想像下面的代码一样返回列名。任何人都可以帮助我吗?提前致谢!
json - 如何使用 JSON 创建 postgres 表?
最新版本的PostgreSQL
功能类似于面向文档的数据库(例如MongoDB
)。有希望的基准表明 postgres 比 mongo 快 x 倍。有人可以给我建议如何使用 postgres 和MongoDB
. 我正在寻找有关的逐步简单示例
1) 如何在 mongodb 中创建包含 JSON/JSONB 对象(如文档)的最简单表
2)如何至少搜索它id
,就像我可以做mongodb
的collection.find({id: 'objectId'})
那样
3)如何创建新对象或至少覆盖现有对象id
,就像我可以做的mongodb
那样
4)如果对象至少存在,如何删除它id
,就像我可以做的mongodb
那样collection.remove({id: 'objectId'})
sql - PostgreSQL v9.5+ UPSERT
看起来 PostgreSQL v9.5 支持 INSERT ... ON CONFLICT DO NOTHING/UPDATE http://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=168d5805e4c08bed7b95d351bf097cff7c07dd65
我想做这样的事情
考虑到我正在使用 PostgreSQL v9.5+,如何实现此结果
postgresql - 相同的数据库,相同的 PG 版本,不同的执行计划:可能是什么原因?
我在本地(OS X)和 Heroku 上执行不同的查询,在同一个数据库上,相同的 PG 版本 9.4.5。
我运行 ANALYZE 来更新 Heroku 和本地(最近的转储)上所有两个相关表的统计信息。
询问:
喜欢的索引:
索引如下:
enable_*
pg_settings 中的设置是相同的。
work_mem
是一样的
seq_page_cost = 1
在两台机器上
random_page_cost
= 4 本地和 2 在 Heroku 上,但在 heroku 上将其设置为 4 不会改变任何东西
explain(analyze, verbose)
本地
explain(analyze, verbose)
在 Heroku 上:
为什么这些执行计划不同?我应该对 Heroku 进行什么调整以使其像在本地工作一样工作?
postgresql - 查看对 PostgreSQL 的 SQL 查询的最佳方式是什么?
我的 GUI 对 PostgreSQL 数据库进行了一些查询。我想知道这些查询是什么。如何更改 PostgreSQL 的设置,以便在 GUI 中执行操作时查看执行了哪些特定查询?
sql - PostgreSQL v9.5+ 中递归更新 jsonb 对象
我用来jsonb_set
在 postgres 中部分更新我的 jsonb 对象。
这就是文档关于这个功能的说法。
我认为create_missing
(默认情况下是这样)会导致不存在的路径出现在我的 jsonb 对象中,但似乎这只适用于最后一步(例如,不是递归的)。
查询
$1 = {foo,bar,baz}
如果和我的电流将失败data = {foo: {}}
问题是:如何jsonb
在 PostgreSQL v9.5+ 中通过递归创建不存在的子对象来更新我的对象?
postgresql - 将 JSONB_ARRAY_ELEMENTS 与 WHERE ... IN 条件一起使用
在线扑克玩家可以选择购买游戏室 1 或游戏室 2 的访问权限。
他们可以因作弊而被暂时禁止。
这里上表填充了4条测试记录:
所有 4 条记录都属于同一个人 - 通过不同的社交网络(例如通过 Facebook、Twitter、Apple Game Center 等)验证了自己的身份
我正在尝试创建一个存储函数,该函数将获取数字用户 ID 列表(作为 JSON 数组)并将属于同一个人的记录合并到一条记录中 - 而不会丢失她的付款或惩罚:
不幸的是,它的使用会导致以下错误:
请帮我解决问题。
为了您的方便,这里有一个 SQL 代码要点。
string - 在字符串中包含参数
当我尝试在下面的字符串中包含参数时遇到问题:
基本上错误就在下面:
我该如何解决?