TYPO3Jack.net - Das TYPO3 Mailinglist Forum Archiv

TYPO3 Mailingliste: nicht fragen - lesen!

TYPO3 Mailingliste: nicht fragen - lesen!_RR_1-->
Zurück   TYPO3Jack.net - Das TYPO3 Mailinglist Forum Archiv > TYPO3-Mailinglisten: DEUTSCH > typo3-german@lists.netfielders.de

Registrieren Hilfe Benutzerliste Kalender Suchen Heutige Beiträge Alle Foren als gelesen markieren
  #1  
Alt 10.09.2007, 14:03
Michael
Gast
 
Beiträge: n/a
Standard [TYPO3-german] IRRE Frage zu 1:n-Relation

Hallo!
Ich habe mal eine Frage zu Relationen und wie sie in Typo3 als Tabellen
verwaltet werden.
Die Frage, warum 1:n-Relationen nicht "vernünftig" normalisiert in Typo3
verwendet werden, habe ich hier schon gelesen
(http://lists.netfielders.de/pipermai...er/038321.html),
allerdings würde mich interessieren, ob das mit IRRE nicht doch geht.

Im Wiki zu IRRE wird z.B. eine entsprechende TCA-Konfiguration für
normale Fremdschlüsselbeziehungen beschrieben:
http://wiki.typo3.org/index.php/Inli..._Foreign_Table

Hier
http://wiki.typo3.org/index.php/Inli...ent_To-Do-List
steht auch der folgenden Satz:
"OK handle 1:n with pointer field on foreign table ("foreign_field")"

Weiß jemand, ob das entsprechend damit funktioniert?

Ich möchte nicht zwingend IRRE nehmen, aber wenn dies die einzige
Möglichkeit ist, normalisierte Tabellen für 1:n-Beziehungen zu
verwenden, dann mache ich das entsprechend.
Ich finde es auch erstaunlich, dass dieses "Problem" sonst nicht
besonders relevant zu sein scheint. Es ist ja gut, wenn sich das
Framework um die Datenhaltung kümmert, aber wenn man bei einem solch
grundlegenden Anspruch an die Grenzen stößt, finde ich das
bemerkenswert, zumal es für mich schon einen Unterschied macht, ob ich
40 oder 60 Tabellen verwende(n muss).

Vielen Dank!

Michael


P.S.: Kann es sein, dass das Archiv bei netfielders nicht vollständig
ist oder wurde folgender Beitrag zurückgezogen?
news://news.netfielders.de:119/mailm...netfielders.de
(Ich hoffe, man kann diesen Link entsprechend öffnen.)
_______________________________________________
TYPO3-german mailing list
TYPO3-german (AT) lists (DOT) netfielders.de
http://lists.netfielders.de/cgi-bin/...o/typo3-german
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
  #2  
Alt 10.09.2007, 14:41
JoH asenau
Gast
 
Beiträge: n/a
Standard Re: [TYPO3-german] IRRE Frage zu 1:n-Relation

_______________________________________________
TYPO3-german mailing list
TYPO3-german (AT) lists (DOT) netfielders.de
http://lists.netfielders.de/cgi-bin/...o/typo3-german
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
  #3  
Alt 10.09.2007, 15:47
Michael
Gast
 
Beiträge: n/a
Standard Re: [TYPO3-german] IRRE Frage zu 1:n-Relation

> Notwendig deswegen, weil in diesem Feld festgehalten wird, wie oft dieses
> Element im Moment mit anderen verknüpft ist. Diese Zahl wird nämlich in
> verschiedenen Bereichen des BE verwendet, damit der Nutzer erkennen kann, ob
> das Element noch anderweitig benutzt wird, oder ob er es bedenkenlos löschen
> kann.


Hm, mal abgesehen davon, dass man die Zahl der verknüpften Elemente
sicher auch durch ein select count() herausbekäme (was
performancetechnisch natürlich etwas langsamer wäre), störe ich mich
auch gar nicht so an diesem zusätzlichen Feld.
Etwas unglücklich finde ich eher, dass die Relation auf der "falschen"
Seite in Form einer kommaseparierten Liste gespeichert wird, anstatt ein
Fremdschlüsselfeld zu verwenden. Dafür gibt es meiner Ansicht nach nicht
wirklich eine schlüssige Begründung und schneller geht das Daten Holen
dadurch bestimmt auch nicht.

> Dieses Verhalten zu umgehen wäre daher wenig sinnvoll.


Da hast du wohl Recht.
Da werde ich wohl in den sauren Apfel beißen und fleißig
Zwischentabellen anlegen (lassen).
_______________________________________________
TYPO3-german mailing list
TYPO3-german (AT) lists (DOT) netfielders.de
http://lists.netfielders.de/cgi-bin/...o/typo3-german
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
  #4  
Alt 10.09.2007, 16:24
JoH asenau
Gast
 
Beiträge: n/a
Standard Re: [TYPO3-german] IRRE Frage zu 1:n-Relation

_______________________________________________
TYPO3-german mailing list
TYPO3-german (AT) lists (DOT) netfielders.de
http://lists.netfielders.de/cgi-bin/...o/typo3-german
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
  #5  
Alt 10.09.2007, 16:50
Michael
Gast
 
Beiträge: n/a
Standard Re: [TYPO3-german] IRRE Frage zu 1:n-Relation

> Die CSV Variante ist ja nicht zwingend vorgeschrieben, wenn auch weit
> verbreitet.


....und die, die der Kickstarter verwendet, wenn ich die Checkbox bez.
m:m-Table nicht anklicke.

> Du kannst das Ganze ja auch für 1:n über eine MM Tabelle machen.
> Und IMHO macht auch das wieder Sinn, denn sonst müsstest Du für jede
> mögliche Verknüpfung zwischen Elementen verschiedener Tabellen ein eigenes
> Fremdschlüssel Feld anlegen


....was für normalisierte Tabellen die gängige Vorgehensweise ist.
Die Beziehung zwischen pages und tt_content ist ja auch so gelöst, also
so anwegig ist das ja nun wirklich nicht.
Der Unterschied zwischen einem zusätzlichen Feld und einer zusätzlichen
Tabelle ist aber schon eklatant, zumal das eben noch einen weiteren Join
kostet. Bei komplizierteren Beziehungen kostet das halt einfach
Performance. Dass es das Modell unübersichtlicher macht, mag für einen
Entwickler jetzt nicht ganz so entscheidend sein, aber ich finde es
mitunter schon ganz nett, wenn ich das Modell auch noch anhand der
Tabellen leicht verstehen kann.

> (oder die Fremdschlüssel in eine CSV Liste
> schreiben), was entweder die Tabellen von der Anzahl der Felder her unnötig
> aufblasen oder das ursprüngliche Problem wieder aufwerfen würde.


Das wär ja nun wirklich evil.

> Die Lösung über uid_local, uid_foreign und tablenames ist daher der
> sinnvollste Kompromiss.


Ansichtsache, aber ich unterwerfe mich natürlich dem Framework. ;-)

> IRRE hätte hierbei noch den Vorteil, daß MM tables
> weitere Felder enthalten dürfen, die für FE oder BE output eingesetzt werden
> könnten.


Damit werden sie quasi zur eigenen Entität und man hat zwei "echte"
1:n-Beziehungen. Nicht, dass mich das stört (das will ich ja
eigentlich), aber wirklich konsequent ist das nicht.
_______________________________________________
TYPO3-german mailing list
TYPO3-german (AT) lists (DOT) netfielders.de
http://lists.netfielders.de/cgi-bin/...o/typo3-german
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
 

Lesezeichen

Themen-Optionen
Ansicht Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


Ähnliche Themen

Thema Autor Forum Antworten Letzter Beitrag
[TYPO3] bidirectional relation between tt_products and tt_newsrecords Lukáš Stanèík typo3-english@lists.netfielders.de 0 09.09.2007 18:40
[TYPO3-german] IRRE und vorhandene Records Thomas Paul typo3-german@lists.netfielders.de 1 07.08.2007 09:06
[TYPO3-german] Kickstarter - Database Relation Thomas Paul typo3-german@lists.netfielders.de 3 27.03.2007 11:29
[TYPO3-dev] IRRE api docs Nikolas Hagelstein typo3-dev@lists.netfielders.de 2 06.03.2007 15:10
[TYPO3-dev] IRRE usabillity improvements Nikolas Hagelstein typo3-dev@lists.netfielders.de 0 06.03.2007 12:52


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:33 Uhr.


Powered by vBulletin® Version 3.7.4 (Deutsch)
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.1.0
Template-Modifikationen durch TMS

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77