gpt4 book ai didi

Nhibernate - 查询没有关系的连接表

转载 作者:行者123 更新时间:2023-12-02 05:15:37 24 4
gpt4 key购买 nike

我想知道是否有人尝试过在 NHibernate 中这样做。

我有下表(简化版)。

城市:城市(varchar2)(PK)省(varchar2)(PK)

CITY_TL:城市(varchar2)(PK)省 (varchar2) (PK)朗(字符(2))(PK)

地点:位置(varchar2)(PK)一些其他专栏。

如您所见,CITY 和 LOCATION 之间没有任何关系。但是,它是以 CITY.Province 可以等于的方式设置的位置。位置。所以,我可以执行这样的查询:

选择c.*来自c市在 c.city = ctl.city 上加入 city_tl ctl在 l.location = c.province 上加入位置 l

我如何在 NHibernate 中做到这一点?这甚至可行吗?

这是我的 CITY 和 LOCATION 的映射文件

城市:

<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
assembly="NHDAL"
namespace="NHDAL.Domain">

<class name="CityTL" table="CITY_TL">
<composite-id>
<key-property column="CITY" type="String" name="Name"/>
<key-property column="PROVINCE" type="String" name="Province"/>
<key-property column="LANG" type="String" name="Lang" />
</composite-id>

<timestamp
column="MODIFY_DATE"
name="ModifyDate"
access="property"
unsaved-value="null"/>

<property name="ProvinceDescription" column="PROVINCE_TL"
type="String" not-null="true" />
<property name="Description" column="CITY_TL" type="String" not-
null="true"/>
<property name="SortOrder" column="SORT_ORDER" type="Int32" not-
null="false"/>

<many-to-one name="City" class="City">
<column name="CITY"/>
<column name="PROVINCE"/>
</many-to-one>
</class>

</hibernate-mapping>

地点:

<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
assembly="NHDAL"
namespace="NHDAL.Domain">

<class name="Location" table="LOCATION">
<id column="LOCATION" name="Name">
<generator class="assigned" />
</id>

<timestamp
column="MODIFY_DATE"
name="ModifyDate"
access="property"
unsaved-value="null"/>

</class>

</hibernate-mapping>

有人可以对此有所启发并告诉我应该查询什么看起来像在 NHibernate 中?

最佳答案

您可以使用笛卡尔积通过 hql 或 SQL 加入不相关的实体:

Here

关于Nhibernate - 查询没有关系的连接表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/628677/

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