gpt4 book ai didi

nhibernate - 使用 SQLite 在 Fluent NHibernate 中使用 SchemaExport 的外键

转载 作者:IT王子 更新时间:2023-10-29 06:29:21 26 4
gpt4 key购买 nike

我正在尝试创建一个简单的数据库应用程序,它使用 Fluent NHibernate 和 SQLite 跟踪各种类型设备的贷款。但是,当我尝试使用 SchemaExport 生成数据库结构以用于单元测试时,未创建一对多关系的外键。

这是我的 Equipment 实体:

public virtual int Id { get; set; }

public virtual EquipmentType Type { get; set; }

public virtual int StockId { get; set; }

下面是我对Equipment的映射:

Id(x => x.Id);
References(x => x.Type);
Map(x => x.StockId);

SQL 正确生成,除了缺少外键:

create table "Equipment" (
Id integer,
StockId INTEGER,
Type_id INTEGER,
primary key (Id)
)

SchemaExport 是否可以在使用 SQLite 数据库时生成外键?

谢谢。

最佳答案

我遇到了同样的问题。

SQLite 最初不支持外键(功能在 3.6.19 中引入),因此 NHibernate SQLiteDialect 实现不知道外键。

由于 SQLite 不支持通过 ALTER TABLE 添加约束,只能通过 CREATE TABLE 参数,因此不使用 NHibernate 默认的外键创建。

NHJIRA 上记录了一个事件 https://nhibernate.jira.com/browse/NH-2200

关于nhibernate - 使用 SQLite 在 Fluent NHibernate 中使用 SchemaExport 的外键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3058005/

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