2 messaggi dal 30 novembre 2018
Un saluto a tutti.
In una richiesta del genere:
Dim ds As New DataSet
Dim conn As SqlConnection = Nothing
Dim Email as string = ""
Dim SqlQuery as string = ""
SqlQuery = "SELECT dbo.tab1.*, dbo.tab2.*"
SqlQuery += " FROM dbo.tab1 LEFT OUTER JOIN dbo.tab2
SqlQuery += " ON dbo.tab1.Id = dbo.tab2.Id"

Try
conn = New SqlConnection(connectionString)
Dim adapter As SqlDataAdapter = New SqlDataAdapter(SqlQuery, conn)
adapter.Fill(ds)
For Each dr As DataRow In ds.Tables(0).Rows
Email = dr("Email").ToString()
..........

in dr, ciclicamente, io avrò tutti i dati della mia richiesta, ma non mi sembra che in dr riesca a recuperare anche lo schema, che

dovrei richiedere con richiesta a parte.
Nell'esempio, se tab1 e tab2 hanno entrambe la colonna Email, come faccio a sapere se il dato di dr("Email").ToString()

corrisponde alla prima o alla seconda tabella ?

In breve, come fare per avere con unica richiesta sia dati che schema ?
(forse è una domanda stupida, ma io programmo da poco)

Grazie
256 messaggi dal 30 novembre 2004
non usare il .* ma chiama solo i dati che ti servono e mette un alias : AS Email1
2 messaggi dal 30 novembre 2018
L'esempio è limitato a 2 tabelle, ma in realtà sono 5 e in ognuna ci sono molti campi, in totale circa 250, e i nomi di vari campi sono comuni a più tabelle.
Ci sono varie soluzioni, ma per quanto letto è sempre necessario fare 2 richieste, una per lo schema e una per i dati.
Se ci fosse la possibilità di fare un'unica richiesta recuperando sia dati che schema per me sarebbe meglio.
Grazie, comunque.
256 messaggi dal 30 novembre 2004
Allora creati una store procedure che ti torna quello che vuoi.

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.