找回密码
 立即注册

QQ登录

只需一步,快速开始

freya

葡萄城公司职员

6

主题

99

帖子

485

积分

葡萄城公司职员

积分
485
freya
葡萄城公司职员   /  发表于:2021-7-21 12:11  /   查看:4861  /  回复:3
本帖最后由 Joe.xu 于 2024-6-5 12:22 编辑

很多老同学新同学一直在发布的时候,对于什么时候勾选覆盖服务器数据库非常迷茫,以及勾选之后到底是选全覆盖,还是半覆盖模糊不清,看完本文让你完全搞清楚这些模糊点~

问题一:什么时候勾选覆盖服务器数据库
image.png737786559.png

  • 首次发布
       当我们第一次发布应用的时候,服务器是没有数据库的,无论是否勾选数据库都会默认被部署到服务器。

  • 非首次发布,发布变更
    因而,当我们已经发布过应用了,也就是说服务器已经有数据库了,我们又要再次发布变更,此时发布的时候就要注意了,如下所述相关内容均以此为前提。
       简单一句话总结,当你对数据表有任何变更,除了开发时无用的数据库增加的测试数据之外,均需要勾选覆盖服务器数据库。具体有哪些典型场景可参见:
      
     1)我更改(新增,删除,修改)了数据表的字段,如名称,数据类型,缺省值,必须,唯一,自动编号等等,发布时是否需要勾选覆盖服务器数据库
          需要,只有勾选了你的变更才会发布到服务器上,外网才能生效。
            1626835882(1).png


     2)我更改(新增,删除,修改)了公式字段、统计字段等等,发布时是否需要勾选覆盖服务器数据库
          需要,只有勾选了你的变更才会发布到服务器上,外网才能生效。
          1626836158(1).jpg


     3)我更改了数据表中设置工作流(包括工作流中的命令等),创建记录权限,设置行权限,设置字段权限,发布时是否需要勾选覆盖服务器数据库
       需要,只有勾选了你的变更才会发布到服务器上,外网才能生效。
       3.png

    4)我更改了数据表中日志的相关选项,发布时是否需要勾选覆盖服务器数据库
      需要,只有勾选了你的变更才会发布到服务器上,外网才能生效
      
      4.png

   5)我在设计器中修改了用户自定义属性,想在服务器用户信息视图中使用
      需要如果对设计器中增加或者修改了用户自定义属性,此时用户信息视图会变更,需要半覆盖才能发布到服务器上

问题二:全覆盖与半覆盖的区别

  • 全覆盖:设计器的表结构和数据完全覆盖服务端
      通过官方描述可以看到是将设计器的两部分覆盖到了服务端:
       1)表结构覆盖(上述描述的场景均可以看作表结构的变更)
       2)设计器的表中的数据,覆盖了服务端中表的数据
    注意:全覆盖会将当前的数据表中的数据直接覆盖掉外网数据,举个例子,假如你之前发布了外网,已经有正式用户开始使用并且创建了表中的记录,如果此时你勾选了全覆盖,那么所有外网正式数据会被清空,被替换为你当前设计器的数据,所以操作之前请三思哦~~

  • 半覆盖:用设计器的表结构覆盖服务器表结构,保留服务器端数据。
       通过官方描述可以看到只覆盖了服务器的表结构(上述描述的场景均可以看作表结构的变更)。选用此种方式,已经发布外网的服务端的数据是不会发生改变的。






      




3 个回复

倒序浏览
Syl悬赏达人认证
银牌会员   /  发表于:2021-7-21 13:59:38
沙发
既然大部分时候都需要覆盖,为啥不默认
回复 使用道具 举报
phoben讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2021-7-21 16:09:15
板凳
修改工作流和权限,应该不需要覆盖
回复 使用道具 举报
Simon.hu讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2021-7-21 16:49:17
地板
这个不是大部分需要覆盖的
很多的时候,我们只是对页面做了一些微调,不涉及修改数据库结构,此时是不需要覆盖发布的
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部