7 messaggi dal 02 agosto 2004
Ciao a tutti

Ho una questa select oracle su più tabelle in join tra loro:

Select A.IDENT_INDISP, B.CODICE_TIPO, D.CODICE_STATO_ESTERNO, E.CODICE_ELEMENTO, C.NOME_IMPIANTO, TO_CHAR(A.DATA_INIZIO_PROGR,'DD/MM/YYYY'),TO_CHAR(A.DATA_INIZIO_PROGR,'HH:MI'),
TO_CHAR(A.DATA_FINE_PROGR,'DD/MM/YYYY'),TO_CHAR(A.DATA_FINE_PROGR,'HH:MI'),A.FLAG_CC,A.FLAG_CG, E.KVOLT, A.T_R_D, A.T_R_N, A.AOT, A.URSC,A.DESIGNATA, A.GRUPPO_INDISP, E.TIPO_ELEMENTO,
A.DESCRIZIONE,A.REGIME_SPECIALE,A.RIENTRO_SERALE,A.TERRE_IN_LINEA,A.TIPO_MAN,A.SVI_MAN,A.NOTE
FROM GI_INDISPONIBILITA A, GI_ANAG_TIPI_INDISP B,
GI_MAPPING_ELEMENTI_RETE C, GI_ANAG_STATI_ESTERNI D,
GI_ANAG_ELEMENTI_TITOLARE E
WHERE A.ID_ANAG_TIPO_INDISP = B.ID_ANAG_TIPO_INDISP AND
A.ID_MAPPING_ELEMENTO_RETE = C.ID_MAPPING_ELEMENTO_RETE AND
A.ID_ANAG_STATO_ESTERNO = D.ID_ANAG_STATO_ESTERNO AND
C.ID_ANAG_ELEMENTO_TITOLARE = E.ID_ANAG_ELEMENTO_TITOLARE

Come faccio il "FILL" di un dataset.

La sintassi normale è
cmdAuthors.Fill(ds, "NOME TABELLA")

dove cmdAuthors è OracleDataAdapter e ds un dataset

Forse è meglio usare un datareader?
Spero che qualcuno mi possa aiutare

Grazie in anticipo

Ciao
3.165 messaggi dal 06 settembre 2002
Contributi | Blog
Ciao,

in linea di massima il datareader è migliore del dataset per velocità e consumo di risorse, è però anche molto limitato; il repeater impegna la connessione fino alla sua chiusura, è in sola lettura ed infine è in forward only.
Per rispondere alla tua domanda, tutto dipende da quello che devi fare con i dati: se devi soltanto visualizzarli, griglia o dettaglio che sia, allora ti conviene usare un datareader; se invece devi fare delle modifiche che poi vuoi rimandare alla sorgente in automatico meglio un dataset, ma anche qui forse sarebbe meglio usare un command ed aggiornare tramite sql la base dati evitando così l'uso del dataset.
Io personalmente uso i dataset solo con datagrid che necessitano di paginazione al fine di ottimizzare le prestazioni con query che tornano grossi mole di dati, altrimenti solo datareader.

HTH,
Stefano Mostarda MCP
Rome Italy

Nothing can be born from hartred

Stefano (SM15455) Mostarda
http://blogs.aspitalia.com/SM15455
Rome Italy
7 messaggi dal 02 agosto 2004
Il mio problema era un'altro.

Nel comando
cmdAuthors.Fill(ds, "NOME TABELLA")
il nome della tabella è unico.

Nel mio caso la query è su più tabelle.

FROM GI_INDISPONIBILITA A, GI_ANAG_TIPI_INDISP B,
GI_MAPPING_ELEMENTI_RETE C, GI_ANAG_STATI_ESTERNI D,
GI_ANAG_ELEMENTI_TITOLARE E

Come faccio il FILL del dataset?

Ciao e cmq grazie per la risposta
3.165 messaggi dal 06 settembre 2002
Contributi | Blog
Ciao,

scusa per la mia risposta fuori tema. Il nome della tabella che passi al dataset, è indipendente dalla query, volendo puoi metterci anche "xyzds". Questo perchè potendo il dataset contenere più datatable al suo interno, usa quello che gli dai per identificarle tra loro.

HTH,
Stefano Mostarda MCP
Rome Italy

Nothing can be born from hartred

Stefano (SM15455) Mostarda
http://blogs.aspitalia.com/SM15455
Rome Italy
642 messaggi dal 25 luglio 2003
CMQ secondo me, sarebbe più performante costruire una vista delle tabelle di cui devi fareil Join e poi nel data set ci passi la vista!

Così il codice sulla pagina è più pulito, se devi fare un cambiamento lo fai alla vista ed il codice non ti cambia e le prestazioni migliorano!

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.