可查询系统目录表,以确定外部表的状态。
每次创建外部表时,GBase 8s 都会更新 sysexternal 和 sysextdfiles 系统目录表。指定外部格式类型 (fmttype) FIXED 时,将更新 sysextcols 系统目录表。
表名 | 描述 |
---|---|
sysexternal | 存储有关每个外部表的信息。 |
sysextdfiles | 存储有关外部表数据文件的信息 |
sysextcols | 存储有关类型为 FIXED 的外部表的信息 |
请参阅《GBase 8s SQL 指南:参考》以获取更多信息。
创建外部表时,将在 systables 系统目录中插入行;但是,除非在创建外部表时指定了 NUMROWS 子句,否则 nrows(行数)和 npused(所用数据页数)列可能无法精确反映外部表所用行数和数据页数。
创建外部表时如果没有为 NUMROWS 子句指定值,GBase 8s 就无法确定外部表中的行数,因为数据位于数据库外的数据文件中。GBase 8s 通过插入较大值 (MAXINT – 1) 来更新 systables 系统目录中的 nrows 列,并根据 nrows 的值计算所用数据页数。优化器稍后将使用 npused 和 nrows 中存储的值来确定最有效的执行计划。尽管无需精确指定 NUMROWS 子句,但是指定得越准确,nrows 和 npused 的值就越准确。