1

我开发了一个在连接到集中式数据库的多台计算机上运行的软件系统。

此时,所有 SQL 查询都与应用程序源代码内联。我想开始将这些迁移到存储过程中。

如果我需要对需要更改软件的存储过程进行更改,如何同步更新?例如:我更改sp_SelectRecordByID并发布了软件的更新。立即,所有正在运行的软件版本在运行时都会收到错误消息sp_SelectRecordByID。一旦它们崩溃并收到更新,一切都很好。

如何防止这种情况?

我想出了几个想法:

  • 做一个新的存储过程,让旧的慢慢消亡
  • 将版本检查添加到存储过程。这是非常不希望的。

有更有效的方法还是我坚持这些选择?

4

2 回答 2

1

据我了解,这更像是一个部署问题。在我看来,有几个选择。

如果您可以同时部署 SQL Server 和应用程序更改(或至少接近),那么您可以同时发布两者,但我想这取决于系统。

您可以在没有应用程序崩溃风险的周末执行此操作吗?

您是否一次将新的应用程序版本部署给所有用户?如果是,那么您可以先创建新的 SP,部署新的应用程序版本,然后删除旧的 SP。

无论如何,希望这会有所帮助。如果没有,请提供有关服务器数量、客户端应用程序数量等的更多详细信息……</p>

于 2013-09-26T14:13:16.530 回答
0

你在使用 Visual Studio 吗?您可以将存储过程保存在数据库项目中,并通过这种方式进行版本控制。

更多信息在这里:http: //msdn.microsoft.com/en-us/library/xee70aty.aspx

于 2013-09-25T23:35:13.743 回答