在open
命令打开某个表时,它需要系统中已经存在一些表并且其中要具有与被打开表相关的项,在这些先决条件满足之前,open
命令不能被使用(这些至少应该存在的表是pg_class
、pg_attribute
、pg_proc
和pg_type
)。 为了允许这些表本身被填充,带着bootstrap
选项的create
将会隐式打开所创建的表用于插入数据。
同样,declare index
和declare toast
命令也必须在相关系统目录被创建和填充之后才能被使用。
因此,postgres.bki
文件的结构必须是:
create bootstrap
其中一个关键表
insert
数据,这些数据至少要能描述这些关键表
close
重复创建其他关键表。
create
(不带bootstrap
)一个非关键表
open
insert
需要的数据
close
重复创建其他非关键表。
定义索引和TOAST表。
build indices
无疑还有其它未被文档记录的顺序依赖关系。