Skip to content

存储格式

数据表存储

数据表的数据源类型为默认时,系统会为数据表创建一张真实的数据表,并且会自动创建以下两个字段

字段类型说明
idvarchar(32)系统生成的唯一ID,主键
seqint(8)数据添加的先后顺序

数据表的id为 z_appId_tableId 其中appId是应用ID,tableId是系统生成的12位的唯一ID。

注意事项

大部分数据库管理工具都按照表id排序,z_前缀可以将系统表和织信生成的表做区分,方便管理员查看

数据表在数据库中的视图

由系统生成的数据库表结构中表名和字段名都是内部id,在直接访问数据库时这些id的可读性就会比较差,织信在创建数据库表的时候自动为每一张数据表使用标识符创建视图。

注意事项

如果数据表是依赖其他应用的数据表,织信也会自动的创建视图

视图示例

表名为z_appid_xju88c8halqop,数据表的标识符是 demoTable

列名标识符备注
idid系统生成的主键
caczccdcd882pname名称
o8n0ezwhf1rmkmaxAge最大年龄

生成的视图名称为 v_appid_demo_table

列名备注
id系统生成的主键
name名称
max_age年龄

注意事项

由于数据库中的表和字段不区分大小写,所以织信在生成视图的时候,会将标识符中的大写字母转换为小写字母,为了可读性两个单词之间会用_ 分隔。例如标识符是maxAge,则生成的视图的列名称为max_age

变更记录表

对于开启了记录变更记录或者评论的数据表,系统会自动的为每张表创建一张变更记录表来记录字段的变更。 变更记录表的名称为 z_appId_tableId_changelog

变更记录表的结构如下

字段类型说明
idint自增主键
record_idvarchar记录的ID
field_idvarchar变更的字段ID
field_namevarchar变更的字段名称
before_valuejsonb字段变更前的值
after_valuejsonb字段变更后的值
create_user_idvarchar创建人的ID
create_timedate创建时间

before_valueafter_value的结构

typescript
interface ValueChange {
    /**
     * 字段类型,例如SingleText
     */
    type: string;
    /**
     * 字段值是否是多选
     */
    multiple: boolean;
    /**
     * 字段的值
     */
    value: object;
    /**
     * 字段值的字符串形式
     */
    valueString: string;
}

评论表

对于开启了评论的数据表,系统会自动的为每张表创建评论记录用户的评论内容。

评论表的名称为 z_appId_tableId_comment

评论表的结构如下

字段类型说明
idint自增主键
record_idvarchar记录的ID
parent_idint评论的父节点ID,用于记录是回复的哪一条评论
commenttext评论内容
is_deletedbool评论是否被删除
create_user_idvarchar创建人的ID
create_timedate创建时间