表 K.1描述了PostgreSQL的各种硬性限制。 但是,在达到绝对硬限制之前,可能会先受到现实的限制,例如性能限制或可用磁盘空间。
表 K.1. PostgreSQL限制
项目 | 上限值 | 说明 |
---|---|---|
数据库大小 | 不限 | |
数据库数量 | 4,294,950,911 | |
每个数据库的关系数量 | 1,431,650,303 | |
关系大小 | 32 TB | 基于BLCKSZ 为缺省的8192字节 |
每个表的记录数 | 受限于可以放到4,294,967,295个页中的元组数 | |
每个表的列数 | 1600 | 同时受限于元组大小,需要能放到单个页中; 参考下面的说明 |
字段大小 | 1 GB | |
标识符长度 | 63字节 | 可以通过重新编译PostgreSQL增大 |
每个表的索引数 | 不限 | 受每个数据库最大关系数的约束 |
每个索引的列数 | 32 | 可以通过重新编译PostgreSQL增大 |
分区键数量 | 32 | 可以通过重新编译PostgreSQL增大 |
由于要存储的元组必须适合单个8192字节的堆页面,因此表的最大列数进一步减少。 例如,除元组头外,由1600个int
列组成的元组将占用6400字节并可以存储在堆页面中, 而一个包含1600个bigint
列的元组将消耗12800字节,因此无法放入单个堆页面。 当类型为比如text
,varchar
和
char
的可变长度字段时, 如果值的长度足够大,它们的值可以存储在行外的TOAST表中。 表堆中的元组中只保留18个字节的指针。 对于较短长度的可变长度字段,使用4字节或1字节的字段头,并且该值存储在堆元组内部。
从表中删除的列也会影响最大列限制。此外,尽管在元组的空位图中将新创建的元组的删除列值内部标记为空,但空位图也占用空间。
FETCH 子句在 Oracle 中可以用来限制查询返回的行数,本教程将教大家如何使用 FETCH 子句。OracleFETCH 子句语法以下说明了行限...
在Oracle中,Initcap()函数可以将每个单词中的第一个字符设置为大写,其余的设置为小写。下面就是Initcap()函数的语法及具体用法...
MySQL Date 函数定义和用法 DATE_ADD() 函数向日期添加指定的时间间隔。 语法DATE_ADD(date,INTERVAL expr type) date 参数是合...
遇到锁表快速解决办法依次执行1-6步,运行第6步生成的语句即可。如果特别着急,运行 1 2 6 步 以及第6步生成的kill语句 即可。第...
在前面的章节我们已经了解到MySQL可以通过 LIKE ...% 来进行模糊匹配。 MySQL 同样也支持其他正则表达式的匹配, MySQL中使用 RE...
在本章中,我们将研究如何在WordPress中编辑用户。以下是在WordPress中编辑用户的简单步骤。步骤(1)- 点击Users → All Users。...
在本章中,我们将学习如何更新WordPress中的版本。 在这里,我们将通过管理面板将WordPress升级到最新版本。以下是更新WordPress...
由于分页对象预定义的样式比较有限,有的时候我们想自定义分页的样式或者标签,由于分页对象的的所有属性和方法都是公开的,这便...