gpt4 book ai didi

c# - 从零开始在 Nhibernate 中创建模式

转载 作者:太空宇宙 更新时间:2023-11-03 11:17:13 27 4
gpt4 key购买 nike

如果模式不存在,我想自动创建它。目前我使用这段代码来创建模式:

new SchemaExport(_configuration)
.SetDelimiter(";").SetOutputFile("schema.sql").Create(true, true);

但是我有两个问题:

1) 它需要有一个空模式才能工作。我希望它为自己创建一个空的模式和用户,如果我给它一次使用的管理员凭据。

2) 我希望它仅在它为空或过时时才创建模式。是否可以让 nhibernate 检查它?当然,如果模式过时,我需要一种方法来询问用户是否重新生成模式和松散数据。

我正在使用 MySql 5,但我希望这可以在不绑定(bind)到具体数据库提供程序的情况下实现。

更新:用户只需安装 MySql 并在安装时输入一些管理员凭据。之后他可以运行我的应用程序,它应该通过向用户询问管理员凭据来创建自己的架构、用户并分配权限。

最佳答案

我回答了一个相当similar question here .

您必须自己检查数据库是否为空,并在必要时创建它。还有一个 ValidateSchema 方法来检查模式是否对应于实际的映射定义。其他一切都是您自己的代码。

用户和权限也可以安装为 DatabaseObjects在映射文件中。

关于c# - 从零开始在 Nhibernate 中创建模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12314594/

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