Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1

    [VB6] connettermi a db access, come?

    ciao raga, mi devo connettere ad un db access, come faccio? vorrei usare qualcosa tipo una datagrid per vedere alcuni campi e, in un'altro form, vedere il record selezionato nel datagrid...

    andiamo con ordine: come faccio a connettermi e stampare tutto su una griglia?

  2. #2
    ecco, è questo che cerchi?

    ----------------------------------------------
    una volta che hai creato il DB:
    1 vai in pannello di controllo
    2 vai in ODBC
    3 clicca su aggiungi(add...)
    4 si apre una finestra con un elenco di driver.Devi selezionare con
    doppio click su microsoft Access Driver(*.mdb)
    5 La nuova finestra che si apre ti permette di selezionare il DB e
    configurarlo aggiungendolo all'elenco dei DSN.prima di tutto seleziona
    il DB cliccando su Seleziona(select...).Sfoglia finchè non trovi il DB.
    Una volta trovato, esegui con doppio click.Vedrai che sopra alle opzioni
    della finestra ora è indicato il percorso del DB.L'ultima operazione
    prima di dare l'OK è indicare il nome del DB.La descrizione è facoltativa.
    N.B. è consigliabile dare lo stesso nome del DB per fini pratici.
    6 Una volta cliccato su OK vedrai che nella prima finestra dell'ODBC è
    stato aggiunto il tuo DB.
    -----------------
    ora vai in Visual Basic.
    visto che tu hai la versione italiana spero di tradurre in maniera esatta
    i comandi....anche se poi non è così difficile.

    A Prima di tutto devi aggiungere al progetto una origine/ambiente dati(data environment)
    non so la traduzione esatta ma dovrebbe essere la penultima voce della
    tendina Aggiungi del progetto.
    B Ora clicca 2 volte sul nuovo oggetto che hai creato.Ti si apre una finestra
    che indica l'origine dati e al di sotto una Connessione.
    C Selezionando la connessione,col tasto destro del mouse appare una tendina
    Devi selezionare 'Proprietà'.
    D In questa nuova finestra che contiene tutti i provider devi selezionare
    Microsoft OLE DB provider per ODBC drivers.dopodivhè ti si apre una
    finestra dove devi indicare il DB a cui fai riferimento.
    E Metti la spunta sulla prima opzione '1-usa nome origine dati'(dovrebbe
    essere già impostata di default).Se provi a cliccare sulla freccetta verso il basso noterai
    che si apre una lista da cui dovrai selezionare il tuo DB.
    Poi seleziona il percorso del DB cliccando sulla freccetta dell'ultima
    opzione.
    F Una volta selezionato il tuo DB clicca su Avanzate e seleziona 'Lettura/Scrittura' e poi verifica
    la avvenuta connessione cliccando su 'test connessione'
    G Ora puo usare il DB. Chiaramente dovrai aggiungere dei Command,etc,etc...
    ------------------------------------------------------------

    per aggiungere un campo del db al datagrid:

    datagrid.row = 1
    datagrid.Col = 1
    datagrid.Text = nomeRecordSet!nome_campo
    datagrid.Col = 2
    datagrid.Text = nomeRecordSet!nome_campo

    datagrid.row = 2
    datagrid.Col = 1
    datagrid.Text = nomeRecordSet!nome_campo
    datagrid.Col = 2
    datagrid.Text = nomeRecordSet!nome_campo


    fammi sapere

  3. #3
    grazie millllllllle! sei stato preziosissimo! solo alcune cose...
    [list=1][*]Quando dovrò distribuire il pacchetto, come farò a fare la connessione..? [*]Il nome del recordset, per default è connection1? Altrimenti come faccio a farlo?[/list=1]
    grazie!

  4. #4

  5. #5
    Dim StaRecordSet As Recordset

    Set Connescio = New ADODB.Connection
    Set Comando = New ADODB.Command

    Connescio.ConnectionString = "DSN=nome_database.mdb;DBQ=" &_
    App.Path & "\database.mdb;DriverId=25;FIL=MS Access;MaxBufferSize=512;PageTimeout=5;UID=admin;"
    Connescio.Open
    Comando.ActiveConnection = Connescio
    Comando.CommandType = adCmdText

    Connescio e comando le devi dchiarare Public in un modulo.
    App.path è la directory dell'applicazione


    -----------------------------------------------------------------
    Private Sub Form_Load()
    Dim tuo_recordset As Recordset

    Set tuo_recordset = New ADODB.Recordset
    tuo_recordset.CursorType = adOpenKeyset
    tuo_recordset.LockType = adLockOptimistic

    tuo_recordset.Open "SELECT * FROM tabella WHERE Cod = 1",
    Connescio2, , , adCmdText


    label1.caption = tuo_recordset!tuo_campo
    ------------------------------------------------------------------
    sono stata chiara? fammi sapere........
    a propoposito, semmai sono statA preziosissimA!!!!!

  6. #6

    non riesco, sbaglio qualcosa, non è che hai un semplice esempio da mandarmi...? te ne sarei super-gratA.

    ah, scusa, pensavo fossi un maschietto...

  7. #7
    col tuo metodo non sono riuscito, allora ho provato così: in un modulo:
    codice:
    Sub Connetti()
    
        Dim miaConn As ADODB.Connection
        Dim mioSet As ADODB.Recordset
        Dim miaStringaConn As String
            
        percorsoDb = App.Path & "\sgp97.mdb"
        miaStringaConn = "Provider=Microsoft.Jet.OLEDB.4.0;"
        miaStringaConn = miaStringaConn & "Data Source="
        miaStringaConn = miaStringaConn & percorsoDb
        miaStringaConn = miaStringaConn & ";Persist Security Info=False"
            
        Set miaConn = New ADODB.Connection
        Set mioSet = New ADODB.Recordset
            
        miaConn.ConnectionString = miaStringaConn
    
    End Sub
    nell'evento form_load:
    codice:
    Connetti
        
    Set objRS = New ADODB.Recordset
    objRS.CursorType = adOpenKeyset
    objRS.LockType = adLockOptimistic
    
    objRS.Open "SELECT * FROM famiglie ORDER BY famiglie.famiglia", _
    miaConn, , , adCmdText
    ma mi da quest'errore: "errore di run-time 3001. gli argomenti non sono di tipo valido, non sono compresi nell'intervallo consentito o sono in conflitto."

  8. #8
    il tuo metodo non lo conosco, ma con il mio funziona (ho fatto copia incolla......)

  9. #9
    allora potresti spiegarmi un po' la seconda parte... non mi funzionava...

  10. #10
    prova così (penultima riga del code originario) (quando vai a capo devi mettere &_ oppure scrivilo nella solita riga: meglio)

    tuo_recordset.Open "SELECT * FROM tabella WHERE Cod = 1", &_
    Connescio2, , , adCmdText

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 © 2025 vBulletin Solutions, Inc. All rights reserved.