ho un problema, nn riesco a fare una query con sql ceh colleghi interfaccia di vb a acces qualcuno sa aiutarmi?
ho un problema, nn riesco a fare una query con sql ceh colleghi interfaccia di vb a acces qualcuno sa aiutarmi?
che detto in italiano significa?
Boolean
dunque devo fare una rubrica con visual basic 6 e sql...l'interfaccia di visual basic si deve appoggiare al database creato da acess...nn riesco a far funzionare le querynn so + come fare...mi sapete aiutare epr favore?
per accedere al Database è necessario innanzi tutto connettercisi...
come hai fatto la connessione?
controllo Data - DAO ? (fortemente sconsigliato)
Controllo ADODC ? (sconsigliato)
Oggetti ADO da codice ? (fortemente consigliato)
se non dai dettgli in merito a queste cose non ti si può dare una mano, tantomento immaginare cosa hai già fatto e cosa no...
Boolean
adodc un casino totale![]()
forse non mi sono spiegato bene...
finora ti sto tirando le informazioni con la tenaglia!
perchè non posti la parte di codice con la quale realizzi la connessione al DB, e quella in cui intendi passare la query?!
se vuoi sapere dove sbagli, devi far vedere almeno qualcosa su cui farle, le correzioni!
forse ti sembrerà noioso, quello che ti dico, ma se scrivessi post di un numero di righe superiori a 3 forse saremmo già arrivati alla soluzione, anzichè impiegarne 5 per capire almeno lontanamente quale sia il reale problema...
Boolean
Private Sub Command1_Click()
Dim Con As ADODB.Connection
Dim StringaConn As String
Dim query As String
Dim Rst As ADODB.Recordset
Set Con = New ADODB.Connection
Set Rst = New ADODB.Recordset
StringaConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Documents and Settings\Go-Jamaica\Documenti\progetto\clienti.mdb;Persist Security Info=False"
Con.Open StringaConn
Rst.AddNew (nome = nome_text_Change)
Rst.Update
Rst.Close
Con.Close
End Sub
Private Sub Adodc1_WillMove(ByVal adReason As ADODB.EventReasonEnum, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset)
Agenda.clienti = App.Path & "clienti.mdb"
End Sub
questo è il codice del mio programma che si basa su una rubrica che ha come interfaccia visual basic e si appoggia ad un data base creato con access che è una tabella che fa la rubrica...solo che + di così nn so riuscito a fare
Dunque, innanzitutto stai usando gli oggetti ADO, generati da codice, infatti vedo un oggetto Connection e un oggetto Recordset.
tutto il resto è molto confuso, e non capisco quale sia la finalità del codice che hai scritto.
giusta la stringa di connessione, ma la connessione, la aprirei all'avvio del programma per chiuderla all'uscita di esso.
in pratica lo schema dovrebbe essere più o meno questo, se usi un singolo form:
una volta ottenuto il recordset, puoi utilizzarlo, per valorizzare dei campi, oppure popolare una ListView, insomma quello che ti serve...codice:'da mettere nella sezione dichiarazioni del Form: Dim Con As ADODB.Connection Dim StringaConn As String Dim query As String Dim Rst As ADODB.Recordset Sub Form_Load() Set Con = New ADODB.Connection StringaConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Documents and Settings\Go-Jamaica\Documenti\progetto\clienti.mdb;Persist Security Info=False" Con.Open StringaConn 'una volta aperta la connessione apri il recordset: Set Rst = New ADODB.Recordset query = "SELECT * FROM TuaTabella" '<-- qui sostituisci il nome della tua tabella Rst.Open query, adOpenDynamic, adLockOptimistic, adCmdText End Sub
quando il form viene scaricato, chiudi tutto:
codice:Private Sub Form_Unload(Cancel As Integer) Rst.Close Con.Close Set Rst = Nothing Set Con = Nothing End SubBoolean
grazie infinitesei un genio evviva
![]()
![]()