以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助] 项目发布后,怎么在原项目上进行开发,而不影响发布后用户的使用呢?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=125997)

--  作者:龙潭春早
--  发布时间:2018/10/11 17:13:00
--  [求助] 项目发布后,怎么在原项目上进行开发,而不影响发布后用户的使用呢?
我们用的是 SQL Server 2008R 数据库。

项目发布后,发现在原项目上进行开发时,会影响到发布后的项目,严重的会导致用户无法使用。

那么,怎么在原项目上进行开发,而不影响到发布后的项目呢?

1)说是可以在本地服务器上进行开发,那完成后发布了的项目如果给用户使用,是不是还要涉及到:

    (1)把本地的数据库备份后,还原到远程服务器上,来替换远程服务器上原来的数据库?
    (2)还要在发布后的项目上,新建一个连接到远程服务器上数据库的外部数据源?
    (3)做了以上这两件事儿之后,才能把发布后的项目真正的交给用户们去使用?

2)在本地服务器上进行开发之前,要做一下和上一条相反的操作:

           要把远程服务器上的东西倒腾到本地服务器?

3)在原项目上进行开发,都能影响到发布后项目的哪些方面呢?

4)有官方的文字介绍吗?


--  作者:有点甜
--  发布时间:2018/10/11 17:21:00
--  

1、两个数据库,一个生产的数据库,一个开发的数据库;

 

2、开发的时候,连接开发数据库;只要你数据库没有修改(增加修改删除表列),你发布前转换成连接生产数据库,然后发布即可;

 

3、如果你修改了表结构,你还得去生产的数据库那里,修改成一样的表结构,然后再切换连接和发布。


--  作者:龙潭春早
--  发布时间:2018/10/11 18:13:00
--  

不过,最后一条要做到可有相当的难度了。

开发的时候,可能随时都要修改表的结构,开发、累计到一定的程度,才会去再次发布。

这么多的改动,要怎么能记得住呢?

还要随时的做记录吗?
[此贴子已经被作者于2018/10/11 20:02:54编辑过]

--  作者:有点甜
--  发布时间:2018/10/11 20:13:00
--  
以下是引用龙潭春早在2018/10/11 18:13:00的发言:

不过,最后一条要做到可有相当的难度了。

开发的时候,可能随时都要修改表的结构,开发、累计到一定的程度,才会去再次发布。

这么多的改动,要怎么能记得住呢?

还要随时的做记录吗?
[此贴子已经被作者于2018/10/11 20:02:54编辑过]

 

不然你就直接把【开发】的数据库作为【生产】的数据库,然后导出本来生产数据库的数据,导入到新的数据库。


--  作者:龙潭春早
--  发布时间:2018/11/5 13:58:00
--  

感觉还是很困惑!

我们的问题是:怎么做到项目的边开发、边使用,而又不影响客户的使用呢?

1)用户在已经发布了的项目上,每天都在录入大量的数据;
2)而我们也在同一个项目上每天不断地进行着开发。

      随着用户随时提出的新的要求和改进方案,以及我们对 FT 理解的逐步深入,每天都在对项目的数据库和其中的表做着大量的编辑,包括对表、列的名称、类型、表达式、……、等方面进行随时的增加、删除、修改、……、等等的操作。

      但是开发的同时,会对客户的使用造成干扰,经常导致项目出错:无法打开、没有 xxx 表、……、等等问题。

我们是希望能够有一个好的方法,能够解决这一问题。

      感觉按照正常来讲,也应该有一个这样的方法吧?

      之前甜老师提到的这些方法,感觉还是解决不了我们的这个问题。

还有更好的办法吗?


--  作者:195135692
--  发布时间:2018/11/5 14:31:00
--  
能不能这样,生产和开发都是同一个数据库,在发布后有修改的,整个项目先备份一个(包括数据库),然后再修改发布,如果修改没有问题则直接使用。如果有问题可以调用回备份的使用。修改时候要删除数据的就一定要确认是可以删除的数据才好。其它的修改应该影响不太吧。
我也准备要干这样的事情了。

--  作者:有点甜
--  发布时间:2018/11/5 14:42:00
--  

1、不建议开发用真实数据。不然,你测试的时候误删了数据怎么办?

 

2、一般是备份数据库出来,开发好程序后,再考虑如何发布的。如果没有修改表结构,直接发布程序即可。


--  作者:龙潭春早
--  发布时间:2018/11/5 15:38:00
--  

不过,感觉这些都是没有办法的办法,是临时的办法、凑合的办法。

我们是想知道 FT官方 的解决方案。

感觉这种情况应该是一个普遍的现象吧?

官方应该早就有一个权威的、完善的开发解决方案: 在线的,或者离线的。

在线的方案,就是我们现在面临的边使用、边开发的方案;
离线的方案,应该是所有开发软件通用的方案。

举个离线方案的例子:

一个 项目AA 开发完成了、发布了,用户CC 拿去正常使用了。几年下来,录入了大量的数据。

现在开发者经过这几年,又对 AA项目 做了很大的改进和升级,用户CC 来买了这个新产品进行安装、升级。

升级后,应该不损害 用户CC 几年来录入的数据,但是新的软件功能更强大了。

        —— 这种方法应该是所有开发软件的应用模式吧?

                     —— 那,咱们 FT 的离线、和在线的开发方法呢?

                           不会没有吧?


--  作者:有点甜
--  发布时间:2018/11/5 18:43:00
--  
以下是引用龙潭春早在2018/11/5 15:38:00的发言:
 

举个离线方案的例子:

一个 项目AA 开发完成了、发布了,用户CC 拿去正常使用了。几年下来,录入了大量的数据。

现在开发者经过这几年,又对 AA项目 做了很大的改进和升级,用户CC 来买了这个新产品进行安装、升级。

升级后,应该不损害 用户CC 几年来录入的数据,但是新的软件功能更强大了。

        —— 这种方法应该是所有开发软件的应用模式吧?

                     —— 那,咱们 FT 的离线、和在线的开发方法呢?

                           不会没有吧?

 

方法一:导出原来的数据,导入到你新系统即可;

 

方法二:在原来数据库那里,执行sql语句,把旧数据库改成新数据库。

 

类似 http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=126281&skin=0

 


--  作者:龙潭春早
--  发布时间:2018/11/6 14:15:00
--  
嗯 尽快研究一下。

不过,看来没有简单些的办法了。