我希望为客户部署新版本,并确保数据库结构与新版本兼容。
例如,如果我在运行时添加DDL,在软件工程领域可以吗?
IF NOT EXISTS (SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'person_data' AND COLUMN_NAME = 'hsssoid') BEGIN ALTER TABLE person_data ADD hsssoid varchar(20) END
每当客户计算工资时,都会运行这些DDL命令。
发布于 2018-03-26 11:05:29
嗯,很管用,但是.
在我看来,我不会使用这种方法,因为运行应用程序的数据库用户必须能够访问模式信息,这可能是生产环境中的一个问题,特别是如果您有其他人部署您的应用程序的话。它们可能会向db用户添加一些安全限制。
最好的方法是将此DDL语句添加到部署脚本中,无论是自动的还是手动的。您可以使用数据库项目来帮助您实现这一目标。
https://stackoverflow.com/questions/49488726
复制相似问题