v2.0.26中的sql表,数据源中正常建立sql表,前端表格区块渲染该sql表时显示“Invalid SQL column or table reference”

v2.0.26中的sql表,数据源中正常建立sql表,前端表格区块渲染该sql表时显示“Invalid SQL column or table reference”,而且这个sql表之前的版本显示没问题

查询日志,看是哪个字段名有问题。这个系统前端显示的字段名和实际在数据表中的字段名不一样,尤其是sql表自写的字段名,比如UserName在实际的表中可能已经变为user_name了,这是数据库的规范化规则运用的结果。

关键是在数据源建sql表时,正常通过,能提交的,预览也有数据,为啥到前端就显示不出来呢

找到原因了,sql数据集必须有唯一主检才行,联合主键不行,没有唯一主键的,需要构造唯一主键id。
例如:构造一个id=CONCAT(c.id, ‘-’, u.id) AS id

还是有问题,只要select语句有As重命名,就容易报错;
AI总结存在的问题:

  1. 强制默认主键排序导致报错 :SQL 集合若未在查询结果中显式包含 id 列,系统会强制注入 ORDER BY id ,导致 Unknown column 'id' 错误,无法支持无主键或复合主键的聚合查询。
  2. GROUP BY 表达式解析失败 :当 SQL 的 GROUP BY 子句中包含函数(如 CONCAT )时,系统报 Invalid SQL syntax ,而相同语句在数据库客户端可正常执行。
  3. 字段别名映射与排序参数不同步 :当前端请求的排序字段(如 sum )与 SQL 定义的列别名(如 total_fee )或字段配置中的“数据库列名”不一致时,系统仅报笼统的 Invalid SQL column reference ,缺乏具体指引且易受前端缓存影响。