Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Comesi fa una query dove usa la union in visula basic 2005?
giovedì 21 dicembre 2006 - 16.39
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
ken87
Profilo
| Junior Member
67
messaggi | Data Invio:
gio 21 dic 2006 - 16:39
Ho un altro problema come si usa la union in visual basic
mi sonnesso al database
connection.Open()
poi
fatto unione = " selsect a from tabella union sekect b from tabella2"
Dim prova3 As OleDbCommand = New OleDbCommand(unione, connection)
prova3.ExecuteNonQuery()
La terza istruzione quando l'ha metto da errore.
Se la tolgo non da errore
Ma dove me la mette il risultato della union.
Ho bisogno di metterlo in una tabella perche devo fare una joyn ?
potete aiutarmi?
grazie mille
ysdemarc
Profilo
| Expert
587
messaggi | Data Invio:
gio 21 dic 2006 - 18:24
credo che ci sia un pò di confusione.
non comprendo bene
> Ma dove me la mette il risultato della union.
> Ho bisogno di metterlo in una tabella perche devo fare una joyn ?
se ti serve fare una join tra tabelle dove una di queste è il risultato di un unione tra due potresti scrivere così
select *
from tabella3 T3
inner join (select A AS campo
from tabella1
union select B as Campo
from tabella2) T1
on T1.A = T3.A (si suppone T3 contenga la colonna A con cui va in join)
Poi non riesco a capire il tuo prova3.ExecuteNonQuery(). Cioè se fai una select si presuppone che voglia in restituzione un dataset coi dati della select, quest'istruzioine penso che dovresti usarla per aggiornamenti (Update, Delete, Insert) .
per avere qualche dato dovresti fare all'incirca così
Dim cn As IDbConnection = New OleDbConnection(StringaDiConnessione)
cn.Open
Dim cm As IDbCommand = New OleDbCommand(sql, CType(cn, OleDbConnection))
Dim da As OleDbDataAdapter = New OleDbDataAdapter
da.SelectCommand = CType(cm, OleDbCommand)
Dim ds As DataSet = New DataSet
da.FillSchema(ds, SchemaType.Source)
da.Fill(ds)
a questo punto in ds avrai i tuoi dati
ciao
Vincenzo
Programmatore sbilenco
ken87
Profilo
| Junior Member
67
messaggi | Data Invio:
gio 21 dic 2006 - 18:56
saro piu preciso ho fatto queta query in acess funzionante ho riportata in visual basic cosi:
unione = ("SELECT Consuntivo.MATRICOLA, Consuntivo.RAG, Consuntivo.DATA," + "nz(budgetd.BG1_gen,0) AS bg1_gen," + _
"nz(Consuntivo.EFFMESE,0) AS Cons, [BG1_gen]-[cons] AS Scostamento, nz(budgetd.bgprog,0) AS bgprog," + _
" nz(Consuntivo.EFFANNO,0) AS Consprog, [bgprog]-[consprog] AS Scotprog" + _
"FROM budgetd right JOIN Consuntivo ON (budgetd.Badge=Consuntivo.MATRICOLA) AND (budgetd.Ragg=Consuntivo.RAG) AND (budgetd.data=Consuntivo.DATA" + _
"union" + "SELECT budgetd.Badge, budgetd.Ragg, budgetd.DATA, nz(budgetd.BG1_gen,0) AS bg1_gen, " + _
"nz(Consuntivo.EFFMESE,0) AS Cons, [BG1_gen]-[cons] AS Scostamento," + _
"nz(budgetd.bgprog,0) AS bgprog, nz(Consuntivo.EFFANNO,0) AS Consprog, [bgprog]-[consprog] AS Scotprog" + _
"FROM budgetd left JOIN Consuntivo ON (budgetd.data=Consuntivo.DATA) AND (budgetd.Ragg=Consuntivo.RAG) AND (budgetd.Badge=Consuntivo.MATRICOLA)")
Dim prova3 As OleDbCommand = New OleDbCommand(unione, connection)
Ora la devo trasferire in una nuova tabella
perche devo fargli fare un altra query che ha un join
E UN PO BRUTTINA LA QUERY MA NON HO TROVATO ALTRA SOLIZIONE .
infatti fa quello chedeve fare.
Come faccio a trsfewrire il tutto in un nuova tabella
ho provato a caricare il data set
ma mi scrive
L'istruzione SELECT include una parola riservata o un argomento scritto in modo errato o mancante oppure la punteggiatura non è corretta .
non sara per caso istruzione nz?
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !