Salve, vi espongo il mio problema:
ho due classi e un dominio N:N tra queste due classi. Poichè i dati sono in numero molto elevato vengono caricati importando un file CSV. Ora però come faccio a relazionare gli oggetti di una classe con quelli dell'altra senza dover fare a mano n-mila relazioni una ad una?
Grazie a tutti per il supporto.
Previously Carlo wrote:
ho due classi e un dominio N:N tra queste due classi. Poichè i dati sono in numero molto elevato vengono caricati importando un file CSV. Ora però come faccio a relazionare gli oggetti di una classe con quelli dell'altra senza dover fare a mano n-mila relazioni una ad una?
L'import CSV è stato creato per l'importazione di singole tabelle, quindi è molto semplice e non gestisce la creazione di relazioni (ad eccezione di quelle introdotte dalla definizione dei campi reference). Non è quindi possibile definire relazioni N:N e non è prevista l'introduzione di questa feature in futuro.
Attualmente ci sono due modi di inserire relazioni N:N:
- Tramite il componente "External Connector"
- Tramite INSERT SQL direttamente nella tabella delle relazioni ("Map_NomeDominio").
Per la seconda opzione, ad esempio avendo una classe D, una superclasse B e una classe C figlia di B, avendo un dominio N:N DB fra D e B, e volendo inserire una relazione fra la card con Id 1 in D e la card con Id 2 in C, il comando di inserimento sarà:
INSERT INTO "Map_DB"(
"IdDomain", "IdClass1", "IdObj1", "IdClass2", "IdObj2", "Status", "User")
VALUES ('"Map_DB"'::regclass, '"D"'::regclass, 1, '"C"'::regclass, 2, 'A', 'system');
Paolo
Previously Tecnoteca wrote:
Previously Carlo wrote:
ho due classi e un dominio N:N tra queste due classi. Poichè i dati sono in numero molto elevato vengono caricati importando un file CSV. Ora però come faccio a relazionare gli oggetti di una classe con quelli dell'altra senza dover fare a mano n-mila relazioni una ad una?
L'import CSV è stato creato per l'importazione di singole tabelle, quindi è molto semplice e non gestisce la creazione di relazioni (ad eccezione di quelle introdotte dalla definizione dei campi reference). Non è quindi possibile definire relazioni N:N e non è prevista l'introduzione di questa feature in futuro.
Attualmente ci sono due modi di inserire relazioni N:N:
- Tramite il componente "External Connector"
- Tramite INSERT SQL direttamente nella tabella delle relazioni ("Map_NomeDominio").
Per la seconda opzione, ad esempio avendo una classe D, una superclasse B e una classe C figlia di B, avendo un dominio N:N DB fra D e B, e volendo inserire una relazione fra la card con Id 1 in D e la card con Id 2 in C, il comando di inserimento sarà:
INSERT INTO "Map_DB"(
"IdDomain", "IdClass1", "IdObj1", "IdClass2", "IdObj2", "Status", "User")
VALUES ('"Map_DB"'::regclass, '"D"'::regclass, 1, '"C"'::regclass, 2, 'A', 'system');
Paolo
Ok, farò così grazie mille!