小编Luc*_*ini的帖子

实体关系问题

我有 4 个这样相关的表(这是一个例子):

Company:
ID
Name
CNPJ

Department:
ID
Name
Code
ID_Company 

Classification:
ID
Name
Code
ID_Company

Workers:
Id 
Name
Code
ID_Classification
ID_Department
Run Code Online (Sandbox Code Playgroud)

假设我有一个classificationwith id = 20, id_company = 1。并且departmentid_company = 2(代表另一家公司)。

这将允许创建来自两个公司的工人,因为分类和部门分别链接到公司。我不希望这种情况发生,所以我认为我的人际关系有问题,我不知道如何解决。

database-design constraint

18
推荐指数
2
解决办法
1052
查看次数

Postgresql:default_statistics_target 值的真正含义是什么?

增加 default_statistics_target 值可以使您的数据库更快,特别是在分析之后....

阅读这篇文章我看到https://discuss.pivotal.io/hc/en-us/articles/201581033-default-statistics-target-Explained

(...) 简而言之,这个参数控制着统计数据的收集方式,值 1 是估计最少/准确的统计数据,值 1000 是最准确的统计数据,显然会消耗时间/资源(CPU、内存等)/空间。通常默认值足以获得准确的计划,但如果您有复杂的数据分布/或查询中经常引用一列,则设置更高的值可能有助于获得更好的表统计信息,因此优化器执行的更好计划。

这是一个很好的解释,但例如,如果我设置 default_statistics_target= 1000 1000 真正意味着什么?正在生成 1000 KB 的统计数据?或者它可能是分析的表的 1000 行?也许是 1000 列?或者每次分析可能需要 1000 秒...

所以我的问题是这个数字是如何真正影响分析或查询规划器的?很明显,我知道 default_statistics_target = 1000 将获得比 100 更多的时间,用于运行分析,并且 1000 将生成更好的统计数据......

postgresql

14
推荐指数
1
解决办法
5668
查看次数

Postgresql:29/E4624520 处的记录长度无效,但复制看起来不错

这是什么错误?我看到复制工作正常,但我不确定数据是否已损坏。

我可以安全地忽略此错误吗?

postgresql replication write-ahead-logging

7
推荐指数
1
解决办法
1万
查看次数

Postgresql 上的真空和真空分析之间的真正区别是什么?

有什么区别:

vacuum;
Run Code Online (Sandbox Code Playgroud)

vacuum analyze; 
Run Code Online (Sandbox Code Playgroud)

我阅读了postgresql手册,但这对我来说仍然不是 100% 清楚。

我需要同时运行两者,还是其中一个就足够了?

postgresql

6
推荐指数
1
解决办法
3617
查看次数

PostgreSQL 中 CREATE INDEX 与 CREATE INDEX CONCURRENTLY 的性能

我知道CREATE INDEX CONCURRENTLY比较慢,但是与传统相比需要多长时间才能完成CREATE INDEX?40%以上还是更多?

我正在一个包含 10000 个寄存器的表和一个包含 15 个字符的列中创建索引。使用传统方式需要 10 分钟CREATE INDEX

我知道这个问题很难回答,但是有办法估算吗?

postgresql performance index

5
推荐指数
1
解决办法
4243
查看次数