gpt4 book ai didi

nhibernate - NHibernate 中的 Configuration.GenerateSchemaUpdateScript() 是管理数据库架构更改的好方法吗

转载 作者:行者123 更新时间:2023-12-03 18:00:28 27 4
gpt4 key购买 nike

我在开发阶段使用 NHibernate 映射作为我的应用程序的定义模式,我使用的模式定义是 NHibernate.Tool.hbm2ddl.SchemaExport()生成 createscript 的方法。

现在,我已经考虑使用 Configuration.GenerateSchemaUpdateScript()生成数据库更改脚本的方法如下:


var dialect = Dialect.GetDialect(configuration.Properties);
string[] schemaUpdateScript;
using (var conn = new SqlConnection(
configuration.GetProperty("connection.connection_string")))
{
conn.Open();
schemaUpdateScript = configuration.GenerateSchemaUpdateScript(dialect,
new DatabaseMetadata(conn, dialect));
}

在此之后,我会将架构更新脚本保存到以时间戳命名的脚本文件中。

这是在 NHibernate 中管理架构更改的好方法吗?

有什么主要缺点吗?

最佳答案

简而言之 - 这取决于。我用它来创建脚本,然后手动编辑,但我确定我在某处读到它不会为现有表创建新的非空列 - 这似乎是有道理的,因为 NHibernate 如何知道如何填充列?

关于nhibernate - NHibernate 中的 Configuration.GenerateSchemaUpdateScript() 是管理数据库架构更改的好方法吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/277697/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com