| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte | | | | NVIDIA RTX™ Virtual Workstation (vWS) |
Autor
|
Thema: Spalte FKAIMKEY in VIEW_DOCUMENT (1083 mal gelesen)
|
Verena Thiebus Mitglied Softwareentwicklerin
Beiträge: 67 Registriert: 27.06.2008
|
erstellt am: 30. Jul. 2008 11:16 <-- editieren / zitieren --> Unities abgeben:
Hallo allerseits! Ich bin gerade beim Durchschauen der Datenbank von Compass in der View VIEW_DOCUMENT über die Spalte FKAIMKEY gestolpert. Kann mir jemand verraten wozu diese genutzt wird? Ich kann es mir leider nicht ableiten. Gruß Verena Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
AWagner Mitglied Software-engineer
Beiträge: 32 Registriert: 27.11.2007
|
erstellt am: 30. Jul. 2008 14:33 <-- editieren / zitieren --> Unities abgeben: Nur für Verena Thiebus
gute Frage! in meinen Augen einfach nur ne Redundanz. in AIMKEY steht der Aimkey des Elements und in FKAIMKEY der Aimkey des Dokumentes da in der WHERE Bedingung sowieso auf E.AIMKEY = D.AIMKEY ( E = ELEMENT; D = DOCUMENT) geprüft wird kann dort nie ein anderer Aimkey stehen. die einen würden jetzt wohl sagen - Der Vollständigkeit halber - ich sage Redundanz Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
WolfgangE Mitglied
Beiträge: 1006 Registriert: 29.01.2003
|
erstellt am: 30. Jul. 2008 15:55 <-- editieren / zitieren --> Unities abgeben: Nur für Verena Thiebus
Hallo Verena, in der VIEW_DOCUMENT ist der FKAIMKEY als solches tatsächlich überflüssig, wie AWagner schon erwähnt hat, es steckt aber dennoch System dahinter. Das Feld AIMKEY ist der AIMKEY der ELEMENT-Tabelle, während FKAIMKEY der AIMKEY der DOCUMENT-Tabelle ist. Es geht also darum, immer die AIMKEYs beider Tabellen in der Sicht zur Verfügung zu haben. Da in der VIEW_DOCUMENT aber eine 1:1-Beziehung dargestellt wird, sind die Werte natürlich gleich. Anders verhält es sich in sämtlichen XREF-Vies, also z.B. VIEW_XREF_PARENT_DOCUMENT und VIEW_XREF_CHILD_DOCUMENT, wo der FKAIMKEY dem AIMKEY aus der XREF_ELEMENT-Tabelle und somit dem verknüpften Element entspricht. Somit hast du in diesen Views dann jeweils den AIMKEY des Elements selbst sowie den AIMKEY des verknüpften Elements in einem einzigen Datensatz. Ciao, WolfgangE ------------------ An Optimist Is A Person Who Has Not Been Shown All The Facts Yet!!! [Diese Nachricht wurde von WolfgangE am 30. Jul. 2008 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Motzi Mitglied Anwendungsprogrammierer
Beiträge: 298 Registriert: 16.06.2002 COMPASS Liebhaber, auch wenn es PSP heisst COMPASS Entwickler. 5x Windows 2003 Server, SQL 2005 AIP2009, SolidWorks 2009, EPLAN P8, Cadenas, Autodesk Productstream Professional 2009 pro, inforCOM 7.1 (ERP) d.3 DMS System
|
erstellt am: 30. Jul. 2008 23:44 <-- editieren / zitieren --> Unities abgeben: Nur für Verena Thiebus
Hallo zusammen, vielleicht kurz zur Erklärung noch.. Klar, Wolfgang hat hier vollkommen recht. Der AIMKEY bezieht sich immer auf den aus der ELEMENT Tabelle, FKAIMKEY steht hier für ForeignKeyAIMKEY und symbolisiert den aus der spezifische Tabelle, z.B. DOCUMENT. Die sollten auch immer beide gleich sein. ABER!!! Viele kennen das Problem, dass im Papierkorb Elemente sind, die ohne ersichtlichen Grund nicht entgültig gelöscht werden können. Das liegt meistens daran, dass der Teil, der in der ELEMENT Tabelle steht noch existent ist, der in Teil des Datensatzes in der 2. Tabelle aber fehlt. Hier kann man jetzt mit Hilfe des FKAIMKEYs und des AIMKEYs eine Routine schreiben die prüft, ob beide Einträge vorhanden sind, wenn nicht, dann kann man den Datensatz und gegebenenfalls die Datei über andere Befehle löschen. Nicht vergessen, das es grundsätzlich Datensätze auch nur in der ELEMENT Tabelle gibt, z.B. Profileinstellunen wie gespeicherte Suchen... Also keine Routine bauen, die diese Einträge alle löscht, sonst hat man eine spannende Nachtschicht vor sich... ------------------ Gruß Motzi Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
WolfgangE Mitglied
Beiträge: 1006 Registriert: 29.01.2003
|
erstellt am: 31. Jul. 2008 02:53 <-- editieren / zitieren --> Unities abgeben: Nur für Verena Thiebus
Zitat: Original erstellt von Motzi: dass der Teil, der in der ELEMENT Tabelle steht noch existent ist, der in Teil des Datensatzes in der 2. Tabelle aber fehlt. Hier kann man jetzt mit Hilfe des FKAIMKEYs und des AIMKEYs eine Routine schreiben die prüft, ob beide Einträge vorhanden sind
Servus Motzi, auch wenn wir an der Stelle vom Thema abweichen ... Wenn der Datensatz der zweiten Tabelle fehlt, dann hast du den Eintrag auch nicht mehr in der entsprechenden View drinnen, also auch keinen FKAIMKEY Da bleibt dann nur noch eine Abfrage der Form: Select ... From ELEMENT Where ENTITY_TYPE = ... And AIMKEY NOT IN TabelleXY Nur so am Rande erwähnt Ciao und guten Morgen, WolfgangE ------------------ An Optimist Is A Person Who Has Not Been Shown All The Facts Yet!!! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Verena Thiebus Mitglied Softwareentwicklerin
Beiträge: 67 Registriert: 27.06.2008 Microsoft Visual Studio 2008 Windows Vista 32bit SP2 Inventor 2008/2009/2010 PSP 2008/2009 Vault 2009/2010
|
erstellt am: 31. Jul. 2008 09:16 <-- editieren / zitieren --> Unities abgeben:
Hi Leute! Ich danke euch für die ganzen hilfreichen und aufschlußreichen Antworten! Ich hatte schon so was vermutet, dass FK für ForeignKey stammt. Nun weiß ich dank euch auch Bescheid wofür die Spalte verwendet wird. Nochmals vielen Dank! Verena Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|