SQL collection 提供了一种通过 SQL 语句获取数据的方法。通过 SQL 语句获取数据字段,配置字段元数据之后,用户可以像使用普通表一样,给表格、图表、工作流等使用,适用于关联查询、统计等场景。
1. 在 SQL 输入框输入 SQL 语句后,点击执行 (Execute) 后,系统将会尝试解析 SQL 使用了哪些表和字段,从来源表中解析出字段元数据。
2. 如果系统自动分析的来源表和字段不对,可以手动选择对应的表和字段,来使用对应字段的元数据。需要先选择来源表,才能在下方的字段来源中选择该表的字段。
3. 如果字段没有对应的来源字段,系统会根据数据类型推断字段类型,如果推断结果不对,可以手动选择字段类型。
4. 在配置字段的同时可以在预览区域看到对应的展示效果。
5. 配置完成,确认无误之后,需要点击 SQL 输入框下方的确认 (Confirm) 按钮才能进行最后的提交。
SQL 语句有变化时,可以点击修改 (Edit) 按钮,直接修改 SQL 语句,重新配置字段。
需要修改字段元数据时,可以通过配置字段 (Configure fields), 像普通表一样修改字段相关配置。
SQL 语句无变化,但数据库表结构有变化时,可以通过点击配置字段 (Configure fields) - 从数据库同步 (Sync from database) 对字段进行同步和配置。
| 模板类型 | 适用场景 | 实现原理 | 增删改支持 |
|---|---|---|---|
| SQL | 模型比较简单,较轻量场景 不方便操作数据库 不想维护视图 想完全通过UI操作 | SQL 子查询 | 不支持 |
| 连接数据库视图 | 模型比较复杂 需要和数据库交互 需要修改数据 需要更良好和稳定的数据库支持 | 数据库视图 | 部分支持 |
使用 SQL 表时请选取在 NocoBase 中可管理的数据表,如果是同一个数据库下,未接入 NocoBase 的其他表,可能导致 SQL 语句解析不准确。如果有此类需求可以考虑通过建立视图并连接。