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
VB.NET e query su 2 database
domenica 20 luglio 2008 - 13.21
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
frungillo
Profilo
| Newbie
10
messaggi | Data Invio:
dom 20 lug 2008 - 13:21
Salve a tutti e complimenti per il forum che è spettacolare....
Ho un problema che mi affligge,immaginiamo per esempio che io ho due database access che si chiamano uno NOMI.mdb con una TABELLA NOMINATIVI e 3 CAMPI 'IDNOME', 'NOME' e 'COGNOME' e un l'altro che si chiama INDIRIZZI.mdb con una tabella INDIRIZZO con 3 campi 'IDNOME', 'INDIRIZZO', e 'CITTA'; ora vorrei che nella mia form io scrivo il nome e cognome e mi tira giu nella datagrid il suo indirizzo e citta; in pratica se io ho 2 database in due file completamente diversi ma, per qualche ragione a noi oscura, sono collegati tra loro come in questo caso, come eseguo la query in VB.net?
Premetto che uso VB.net Express edition.
Grazie
Dainesi
Profilo
| Senior Member
476
messaggi | Data Invio:
dom 20 lug 2008 - 19:19
Per estrarre i dati io "allegherei" le tabelle di un database nell'altro (o in alternativa creerei un terzo database fatto di tabelle allegate) e quindi su questo eseguo le operazioni di interrogazione.
Detto questo sappi che in un dataset puoi importare i dati in varie datatable e poi, disconnesso dalle origini, interrogare i contenuti.
alexmed
Profilo
| Guru
1.186
messaggi | Data Invio:
dom 20 lug 2008 - 21:59
Ciao frungillo,
Come dice Dainesi, non credo sia possibile interagire tra due database simultaneamente, stà di fatto che quando crei una connessione punti sempre ad un solo Db.
Quindi prima dovresti fare in modo che le tabelle siano sullo stesso DB.
Secondo me dovresti cmq porre la questione nella stanza relativa a SQL
http://www.dotnethell.it/forum/SQL-Server-MySQL-Access.aspx
Li sicuramente c'è qlc che saprà dirti come fare.
Ciao
gabriel81
Profilo
| Junior Member
194
messaggi | Data Invio:
lun 21 lug 2008 - 08:59
Io allegherei le tabelle in un unico db e fare una query da usare come vista
mark81
Profilo
| Newbie
8
messaggi | Data Invio:
lun 21 lug 2008 - 23:25
Ciao, le soluzioni che ti hanno già proposto sono le migliori secondo me. Ma se proprio devi mantenere 2 database, puoi fare una query semplice sul primo che ti restituisce il valore del campo IDNOME associato alla ricerca che tu fai, associarlo poi ad una variabile e successivamente fai una seconda query al secondo database che ti restituisce il valore dei campi che ti servono. Ma ti ripeto, la soluzione migliore secondo me è quella di unire i due database.
Ciao
frungillo
Profilo
| Newbie
10
messaggi | Data Invio:
lun 21 lug 2008 - 23:49
Grazie ad alexmed, e comunque a tutti voi che avete avuto la disponibilita di interessarvi, credo che la soluzione migliore sia prorpio quella di unire i due DB......
Dainesi
Profilo
| Senior Member
476
messaggi | Data Invio:
mar 22 lug 2008 - 16:48
Non devi per forza unire i due DB !!! La soluzione che ti ho prospettato utilizza un terzo DB che non contiene dati ma solo i link alle tabelle che ti interessano presenti su fonti eterogenee. Pensa che con questo metodo puoi combinare in una sola query dati provenienti da Access, DB2 su AS/400, Oracle e SQL Server (per dirne alcuni ...) senza bisogno di conoscere il rispettivo dialetto SQL !!!!
Lascia separati i due DB (sopratutto se non li hai fatti tu ...) e creati il tuo file mdb contenente i link!
tigre
Profilo
| Junior Member
198
messaggi | Data Invio:
ven 17 apr 2009 - 21:50
ho lo stesso problema,
vorrei fare una query su due tabelle esistenti su due database.
esempio
tabella A
Codice
tabella B
Codice
Valore
risultato
Tabella A
Codice valore
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 !