Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    vb6 - nuova tabella/query in access

    salve a tutti
    pur se con molta fatica vado avanti nella trasformazione
    di un mio vecchio programma access in vb6;
    adesso mi trovo ad un problema di questo tipo:
    ho la necessita' di creare una tabella/query temporanea che
    riempio con dei valori;
    per cui utilizzo l' istruzione sql CREATE TABLE ......
    e quindi cerco di fare la connessione; ed ecco il problema
    durante la connessione alla tabella mi da' errore di tabella
    inesistente; se faccio il debug e do F8 per continuare dalla
    stessa istruzione identica me lo accetta; ho dedotto, spero di
    non sbagliarmi, che la tabella creata non e' immediatamente
    visibile (infatti anche in access la vedo dopo qualche secondo)
    se e' effettivamente cosi', c' e' modo di fare continuare il programma
    dopo avere creato la tabella/query e questa sia diventata
    accessibile?
    pensavo di risolvere utilizzando la DOEVENTS ma non e' cosi'

    qualcuno sa aiutarmi? grazie

  2. #2
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244

    Re: vb6 - nuova tabella/query in access

    Originariamente inviato da Luberto Mario
    qualcuno sa aiutarmi? grazie
    Dipende...

  3. #3

    Dipende...

    ciao gibra

    dipende... da cosa?

    gia' che ci sono come si fa a mettere il tuo "Dipende..."
    come citazione?

    grazie

  4. #4
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244

    Re: Dipende...

    Originariamente inviato da Luberto Mario
    ciao gibra

    dipende... da cosa?
    Basta leggere il Regolamento, e capirai tutto.

  5. #5

    vb6 - nuova tabella/query in access

    ciao gibra
    sinceramente ho letto il regolamento e non ho cmq capito il
    motivo del "Dipende..."
    se puoi essere piu' esplicito bene, e altrimenti ti ringrazio cmq
    per l' aiuto che mi hai dato fino ad ora

  6. #6
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244

    Re: vb6 - nuova tabella/query in access

    Originariamente inviato da Luberto Mario
    ciao gibra
    sinceramente ho letto il regolamento
    Forse l'avrai letto, ma di sicuro non l'hai compreso.

    Vediamo se riesco a farti capire. Prova così:

    1) mettiti 'mentalmente' nei panni di una persona che non conosce assolutamente niente del tuo programma.

    2) Ora, con calma, rileggi il tuo post (dimentica per un attimo il 'tuo' problema)

    3) poi domandati:
    Chi legge...
    a) ... può davvero capirci qualcosa in quello che è scritto?
    b) ... ha tutti gli elementi necessari a fornire una qualsiasi soluzione?


    Non so quale risposta ti darai, ma la mia risposta è sicuramente: "NO!"


  7. #7

    vb6 - nuova tabella/query in access

    ciao gibra,
    scusa se rispondo con ritardo ma sono stato fuori l' intera giornata
    devo dirti che la mia risposta al questito sarebbe NO; hai perfettamente
    ragione; vedo di spiegarmi meglio, anche se nel frattempo ho trovato
    la soluzione, magari articgianale ma funzionante; allora nel mio programma vb6
    uso i dati di tabelle contenuti in un access tramite il collegamento
    Set connDbs = New ADODB.Connection
    connDbs.Open connStr PATH\NOMEACCES

    durante la procedura creo delle query tramite le istruzioni

    Set £Dbs = OpenDatabase(PATH\NOMEACCESS")
    £Dbs.QueryDefs.Refresh
    Set qryDef = £Dbs.QueryDefs(NOME_QUERY)
    £Dbs.QueryDefs.Refresh
    qryDef.SQL = STRINGA_SQL
    qryDef.Close

    quindi volevo utilizzare la query con il collegamento seguente

    Set connRst = New ADODB.Recordset
    connRst.Open STRINGA_SQL

    il risultato e' l' errore di query non trovata; bastava fare ripetere
    la stessa riga con F8 da debug, magari un paio di volte, e andava bene

    la risposta che mi sono dato e' che utilizzavo due metodi diversi di
    accesso ai dati e ho risolto facendo un "refresh" del DB con il seguente
    codice:

    Public Sub RefreshDb()
    connDbs.Close
    Set connDbs = Nothing
    Set connDbs = New ADODB.Connection
    connDbs.Open connStr & PATH\NOMEACCESS
    End Sub

    come ti dicevo molto artigianale, magari stupido, ma funziona
    puoi indicarmi un metodo migliore?
    grazie

  8. #8
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Vedo che stai utilizzando sia DAO che ADO, il che (a mio modesto avviso) è sbagliato.
    Si usa l'uno o l'altro, ma non entrambi.
    Quindi il mio consiglio è: prima di qualsiasi altra cosa tradurre tutte le istruzioni DAO.

    Ovviamente la tua routine RefreshDb() non è corretta, almeno non nel senso che 'pensi' tu.
    Il refresh si fa in altro modo (lo potrai vedere nei progetti che ti segnalo sotto).

    Se vuoi esempi sull'uso di ADO ne trovi a pacchi sul web, ma credo che il mio progetto
    Prova Login V.2 possa esserti di aiuto perchè 'include' tutte le funzionalità base di una 'reale' applicazione a partire da Login, fino alla gestione dei dati.

    Lo puoi scaricare qui
    http://nuke.vbcorner.net/Progetti/VB...T/Default.aspx

    Se poi vuoi vedere l'uso avanzato di query già presenti nel db (stored procedure) che query create da codice ('ad hoc') allora guardati l'articolo (e progetto) su ADODB che vedi in firma per la gestione, tra l'altro, delle date.

    Comunque, a parte visionare il mio codice, ti suggerisco di acquistare un libro su ADO perchè vi sono un sacco di concetti che stanno 'sotto' al mio codice, che è impossibile spiegare (e capire) senza una vera guida sull'argomento.
    Ad esempio, questo titolo è imperdibile:

    Accesso ai dati con Visual Basic
    - I Portatili - Mondadori editore - 10€ circa
    500 pagine (circa) di 'pura conoscenza concentrata'

    Anche se è rivolto a SQL Server, lo puoi utilizzare anche per altri database perchè spiega ADO nei minimi dettagli.


  9. #9

    nuova tabella/query in access

    ciao gibra
    purtroppo riesco a collegarmi solo la sera
    ho letto la tua risposta e scaricato l' esempio che mi hai
    suggerito; in prima battuta mi sembra lontano anni luce da
    quelle che sono le mie conoscenze; comunque mi sforzero' di
    capire;
    ti ringrazio per la tua paziemza, cortesia e attenzione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.