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. Visual Studio 6.0
Connessione ado a piu tabelle con stringa sql
giovedì 02 novembre 2006 - 19.22
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
giuseppe66
Profilo
| Newbie
4
messaggi | Data Invio:
gio 2 nov 2006 - 19:22
Salve a tutti
Sono nuovo utente di questo forum, e non ne conosco i
meccanismi e l'efficacia stessa.
Sarei grato a chi mi risolvesse uno dei problemi che ho in VB6, dal momento che sono alle prime armi e per lo più autodidatta.
Sto cercando di creare una piccola applicazione per il lavoro,
in VB6, e dovrei effettuare delle connessioni in ADO a un database con estensione .mdb .
Ho, quindi, un database in Access(.mdb)"BENIDICONSUMO"(nome del datatabase)che tra le altre contiene le seguenti 2 tabelle :
1)tblbenidiconsumo con i seguenti campi:"ID","BENEDICONSUMO","PREZZOUNITARIO","CATEGORIA"
2)tblcategorie con i seguenti campi:"ID","CATEGORIA"
e preciso che il campo ID della tabella 'tblcategorie' è in relazione uno a molti con il campo CATEGORIA della tabella
'tblbenidiconsumo'.
Il mio problema è:
dovrei visualizzare in una form,in particolare in un Datagrid, una query
del database al quale sono connesso, con i seguenti campi :"ID","BENEDICONSUMO","PREZZOUNITARIO", tutti della tabella tblbenidiconsumo
e "CATEGORIA" della tabella tblcategorie
USO IL SEGUENTE CODICE:
in un modulo,definisco le seguenti variabili:
Public Connessione As ADODB.Connection
Public rsRecordset As ADODB.Recordset
Public strSQL As String
'POI CREO LA VARIABILE GENERALE 'congen'COSI':
Public Sub ConGen(Tabella As String, Adodc As Adodc, Archivio As String)
'### Connessione Archivio Dati ###
Set Connessione = New ADODB.Connection
Set rsRecordset = New ADODB.Recordset
Connessione.ConnectionString = "provider = microsoft.jet.oledb.4.0; " _
& " data source = " & App.Path & "\" & Archivio & ".mdb"
Connessione.Open
'(inserisco qui la variabilestringa strSQL!!!!!!!!!).......................
rsRecordset.CursorLocation = adUseClient
rsRecordset.Open strSQL, Connessione, adOpenDynamic, adLockPessimistic
Set Adodc.Recordset = rsRecordset
End Sub
LA MIA DOMANDA E':
Dopo aperto la connessione,qual'è la variabile stringa strSQL ?
dal momento che mi dà sempre errore qual'è la stringa esatta?
Io uso questa stringa:
strSQL = " SELECT ID,BENEDICONSUMO,PREZZOUNITARIO,tblcategorie.ID " & _
"FROM tblcategorie " & _
"INNER JOIN tblbenidiconsumo ON" & _
"tblcategorie.ID = tblbenidiconsumo.CATEGORIA"
GRAZIE MILLE, ASPETTO UN HELP
giuseppe66
Seyen
Profilo
| Newbie
28
messaggi | Data Invio:
ven 3 nov 2006 - 09:55
Ti dò un consiglio di praticità.
Se usi l'access per gestire il DB utilizza la creazione di Query grafico dell'access stesso. Quindi guardati la chiamata sql che crea per la query selezionata....e vai di copia ed incolla nella stringa
Io quando devo gestire e creare chiamte sql complesse prima le provo e testo su Access stesso, ed evntualmente una volta copiate faccio magari le dovute modifiche, o gli inserimenti delle varibili per le clausole WHERE
giuseppe66
Profilo
| Newbie
4
messaggi | Data Invio:
ven 3 nov 2006 - 17:48
Grazie
Si, infatti, così faccio anch'io
la mia stringa SQL l'ho ottenutadal generatore SQL della query di access,
ma una cosa non mi è chiara..........
devo creare due recordset? una per ogni tabella?
ed aprirli entrambi?
giuseppe66
StefanoLep
Profilo
| Senior Member
248
messaggi | Data Invio:
ven 3 nov 2006 - 18:09
Ciao, ogni recordset che apri punta ad una tabella o una query a seconda di ciò che hai indicato nella variabile StrSQL, la connessione può (e di solito è così) essere una sola ed essere utilizzata per aprie tutti i recordset che ti servono. Per tornare alla tua domanda: se vuoi operare su due tabelle contemporaneamente devi utilizzare due recordset.
giuseppe66
Profilo
| Newbie
4
messaggi | Data Invio:
ven 3 nov 2006 - 18:27
Dal momento che devo operare contemporaneamente su due tabelle, provo a crearmi e aprire due recordset e ti farò sapere come è andata.
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 !