我有一个连接到 Microsoft SQL Server 2000 的 Python 应用程序。该应用程序在启动时检查更新并自动应用它们。很快,它也需要处理数据库模式的更改。根据我的研究,似乎为我当前的数据库创建一个基线脚本,然后为每个架构更改创建一个新脚本是可行的方法。这样,任何版本的数据库都可以更新到最新版本。
我的问题是如何管理这些更新的权限?现在大约有 50 人在使用我的应用程序,其中大多数人具有只读访问权限。理想情况下,我希望任何用户都能够执行必要的更改,例如创建或更改表,以便第一个接收新更新的人将应用新的架构更改。如果这没有发生,那么他/她可能根本无法使用该应用程序,直到具有适当权限的人更新数据库。
如果每个用户都可以更新架构,我会看到一个问题。什么会阻止他们登录 SQL Server Management Studio 并导致删除表等问题?
现在,这个应用程序只部署在一个地方,所以我很容易手动管理模式更改。但我们确实有计划部署到更多地区,我希望这一切都能自动处理。