2014-01-27 70 views
0

我最近從我的學校得到了一份任務,我必須爲ORM創建一個Propel Schema。 這不是一個真正的問題,但其中一個要求是將這些表中的兩個連接成多對多關係。推進:沒有交叉表示的多對多關係

通常情況下,你可以用一個可交叉表達(持有兩個表的屬性),但我們的老師說這也可能沒有這樣的交叉表達(甚至是需求)。

如何在Propel中創建這種類型?

的ERD的問題:

http://files.f-o-g.eu/b8f8a9

(我停留在貴賓< - > Einladung)

到目前爲止,我有這樣的:

<?xml version="1.0" encoding="UTF-8"?> 
<database name="orm1" defaultIdMethod="native"> 
    <table name="einladung" phpName="Einladung"> 
      <column name="nummer" type="INTEGER" primaryKey="true" autoIncrement="true" /> 
      <column name="fbuffet" type="BOOLEAN" /> 
      <column name="splatz" type="INTEGER" /> 
    </table> 
    <table name="sorganisation" phpName="SpendenOrganisation"> 
      <column name="name" type="VARCHAR" size="255" primaryKey="true" required="true" /> 
      <column name="adresse" type="VARCHAR" size="255" /> 
    </table> 
    <table name="wveranstaltung" phpName="WVeranstaltung"> 
      <column name="titel" type="VARCHAR" size="255" primaryKey="true" required="true" /> 
      <column name="datum" type="DATE" required="true" /> 
      <column name="ort" type="VARCHAR" size="255"/> 

    </table> 
    <table name="vip" phpName="Vip"> 
      <column name="id" type="INTEGER" primaryKey="true" autoIncrement="true" /> 
      <column name="vname" type="VARCHAR" size="255" required="true" /> 
      <column name="nname" type="VARCHAR" size="255" required="true" /> 
    </table> 
</database> 

任何人都得到一個線索?

+0

希望這是英文。我甚至無法找到這些表格之間的共同聯繫! –

+0

翻譯:左側(VIP)(vorname = firstname,nachname = lastname);右邊:Einladung(邀請)(freies自助餐=免費自助餐,sitzplatz =座位,nummer =數字); (bekommt = get)(spenden betrag =捐款金額) – user1818486

回答

0

不可能在沒有交叉表的情況下創建m-to-m關係。

我想你的VIP -> Einladung關係是錯誤的。它應該可能是一個1對n的關係。

+0

好吧,關係是正確的(這是我們得到的規範)。無論如何,正如我猜測的,沒有這樣的交叉表是不可能的。接受你的答案。 – user1818486