凄美地 发表于 2024-4-12 10:26:22

急!8.0.4 手动在sqlite3的表里加了新字段,页面上无法更新写入这个新字段

本帖最后由 凄美地 于 2024-4-12 10:45 编辑

手动在sqlite3的表里加了新字段,页面上无法更新写入这个新字段,但是其它字段是正常的,数据库写sql语句也是可以更新的

Nathan.guo 发表于 2024-4-12 10:26:23

凄美地 发表于 2024-4-12 14:42
我们确实本地都是在活字格设计器里面直接添加字段的,本地运行后也是显示正常并且页面操作也正常;但因为 ...

这样的话就只能绕一下了:
1.找一个一个非离线的Linux环境
2.把服务其中的应用备份,并在新的非离线环境还原
3.设计器半覆盖发布到新的离线环境
4.把离线环境中的应用备份,然后还原到正式服务器

当然,在做这一整个流程前,建议大佬将整个活字格服务器备份下,以防中间哪步操作失误了~~

Nathan.guo 发表于 2024-4-12 11:43:06

大佬,活字格内建表的字段不是实时链接到Sqllite查询的,再内置文件中会有一些记录~~

所以想给内建表添加字段的华,不建议直接操作Sqllite,我们可以直接通过活字格来添加~~

凄美地 发表于 2024-4-12 14:37:24

Nathan.guo 发表于 2024-4-12 11:43
大佬,活字格内建表的字段不是实时链接到Sqllite查询的,再内置文件中会有一些记录~~

所以想给内建表添 ...

我们是Linux离线发布的 所以手动拷贝文件夹 内置表无法直接拷进去会把服务器上信息覆盖掉,所以我是直接进去sqlite3手动添加的字段,但添加后在页面上操作这个字段就无法更新

凄美地 发表于 2024-4-12 14:42:46

Nathan.guo 发表于 2024-4-12 11:43
大佬,活字格内建表的字段不是实时链接到Sqllite查询的,再内置文件中会有一些记录~~

所以想给内建表添 ...

我们确实本地都是在活字格设计器里面直接添加字段的,本地运行后也是显示正常并且页面操作也正常;但因为是Linux离线发布不能直接拷贝app_data目录下的sqlite3文件进去,所以直接进入服务器的sqlite3文件写sql添加字段,结果这个新添加的字段无法在页面上写入信息

凄美地 发表于 2024-4-15 13:47:34

Nathan.guo 发表于 2024-4-12 15:16
这样的话就只能绕一下了:
1.找一个一个非离线的Linux环境
2.把服务其中的应用备份,并在新的非离线环 ...

还有别的方法吗 为什么页面上操作不了这个字段呢 别的字段都正常欸 而且进入sqite3里写update语句也是可以更新的

Nathan.guo 发表于 2024-4-15 16:18:09

大佬,这个目前没没有更好的办法了,至于为什么直接写sql可以正常操作,十一位内,活字格在拂去sqllite数据时,不仅仅事直接读取,内部还有很多其他逻辑,而且结构也会用某些特殊方式记录一份,因此及其不建议手动修改内建库数据表结构~~

凄美地 发表于 2024-4-18 11:15:30

Nathan.guo 发表于 2024-4-15 16:18
大佬,这个目前没没有更好的办法了,至于为什么直接写sql可以正常操作,十一位内,活字格在拂去sqllite数据 ...

过了几天后发现这个字段在页面上可以操作了,可能新加入字段时活字格要慢慢读取sqlite的结构和数据?

Nathan.guo 发表于 2024-4-18 11:20:02

凄美地 发表于 2024-4-18 11:15
过了几天后发现这个字段在页面上可以操作了,可能新加入字段时活字格要慢慢读取sqlite的结构和数据?

这个具体的内部代码逻辑我这边就不清楚了~~

不过依然不建议大佬直接改,而是通过备份还原的方式比较稳妥~~
页: [1]
查看完整版本: 急!8.0.4 手动在sqlite3的表里加了新字段,页面上无法更新写入这个新字段