我们正在设想将其滚动升级到云环境的场景,并正在设想利用CREATE OR ALTER
语句来实现我们的过程,触发器,视图和功能。
之间有差距
DROP <OBJECT_CLASS> IF EXISTS <theThing>
GO
以及最终的
CREATE <OBJECT_CLASS> <theNewThing>
GO
这将意味着客户端将找不到该对象,并且对于触发器,该应用甚至可能无法检测到错误。我希望
CREATE OR ALTER <OBJECT_CLASS> <theOldOrNewThing>
也许可以希望提供一种在事务中间执行此非事务性操作的方法,也许将所有新事务锁定直到完成(这不是理想的选择!)。
您看到哪些风险或现实生活经验?
对于SQL Server(2016 SP1 +)如何对正在运行的数据库上的CREATE OR ALTER
语句做出反应,是否有人具有权威的技术见识?