Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    354

    [VB6/database] Aiuto per gestire un database

    Salve a tutti, c'è qualche anima pia che mi riesce ad aiutare ad interagire con un database tramite vb6?

    semplicemente, ho creato la veste grafica (completamente scarna e non curata, ma per l'esempio mi va più che bene), ho creato un database con access 2003 e convertito in access 97 per questioni di compatibilità.

    allora, il progetto è così costitutito:

    form iniziale dove poter decidere se:
    - vedere le scorte in magazzino (scorte)
    - aggiungere scorte (add)
    - eliminare scorte (sub)

    il form scorte, quello che ora più di tutti mi interessa gestire per capire come funziona il tutto, è formato da:
    - oggetto data (che da quello che ho capito serve per far interagire col databasa)
    - un DataGrid (che da quello che ho capito serve per visionare la tabella del database)
    - un combobox (che mi piacerebbe servisse per sistemare il DataGrid in un ordine stabilito (tipo crescente/decrescente))

    Così facendo però non riesco a far sì che il DataGrid mi veda il database...non so dove mettere mano per far questo...mi dice di aggiungere una fonte dati OLE DB o un Data Environmento o il controllo Microsoft ADO Data....
    Nei riferimenti ho aggiunto i Microsoft ADO 2.8 Library (ma non so se sia giusto)...

    Questo è quindi il problema, far sì che il DataGrid mi veda il database...

    Gli altri due form (aggiungi, elimina) servirebbero per modificare i dati nel datadase ovviamente (e anche qui non so come fare)...ma questo è un altro punto...

    allego i files... Files

  2. #2
    Allora da quel che vedo non sei messo bene coi DB.

    Il mio consiglio è di usare ADO via codice, senza controlli.

    Per la connessione crea un modulo (Progetto/inserisci Modulo) e potresti usare:

    codice:
    Public connConnection As New ADODB.Connection
    Public rsRecordset As New ADODB.Recordset
    Public Sub connessione()
    Dim strConnect As String
    Dim strProvider As String
    Dim strDataSource As String
    Dim strDataBaseName As String
    strProvider = "Provider= Microsoft.Jet.OLEDB.4.0;"
    strDataSource = App.Path
    strDataBaseName = "nome del tuo DB"
    strDataSource = "Data Source=" & strDataSource & strDataBaseName
    strConnect = strProvider & strDataSource
    connConnection.CursorLocation = adUseClient
    connConnection.Open strConnect
    rsRecordset.CursorType = adOpenStatic
    rsRecordset.CursorLocation = adUseClient
    rsRecordset.LockType = adLockPessimistic
    End Sub
    Public Sub kiudiConnessione()
    If connConnection.State = 1 Then
    connConnection.Close
        Set connConnection = Nothing
        End If
    End Sub

    In questo modo puoi usare anke un DB Access 2000 ( e nn 97).

    Per interagire usi le proprietà degli oggetti rsRecordset (Ke sarà il record) e connCOnnection (ke è la tua connessione).

    Per kiudere la connessione (neccessario alla kiusura del progetto) basta ke rikiami la sub "kiudiCOnnessione"

    Invece ke un datagrid (è brutto secondo me) userei listbox e combobox.

    Da quel che ho visto i record non sono molto ricchi di campi quindi non dovresti incontrare difficoltà!

    cia!

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    354
    Allora da quel che vedo non sei messo bene coi DB.
    e non solo con quelli!

    Ok, vada per gli ado senza controlli...avevo letto già da altre fonti che era meglio questa via...bene...

    ora però, come faccio a far sì che il campo X mi appaia nella textBox? usando i rsRecordset...ma che codice scrivo per questo?

    il progetto è una cavolata tutto sommato..mi serve per capire come funziona il tutto...

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    354
    Allora, ho mosso un po' le acqua e sono andato un attimo avanti...ho però usato il "data1" e con delle celle Text sono riuscito a visualizzare i dati della tabella del DB. Bene dico io!

    Ora, per fare un bel passo in avanti, considerando che a priori non posso conoscere esattamente quanti elementi avrò nel DB, come posso visualizzare una "tabella" riassuntiva del DB? (considerando sempre che il DB in questione ha solo una tabella).

  5. #5
    Ti ho fatto un esempio modificando un po' il tuo progetto.
    L'unica cosa ke nn ho capito è: Quando vuoi metterli in ordine crescente e decrescente....crescente e decrescente di cosa?!?
    ciao!
    Non ho avuto tempo di commentare il codice quindi se hai dubbi mandami un PM o kiamami su MSN!

    ESEMPIO


  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    354
    WOW, grazie mille, ora me lo studio per benino...poi sicuramente avrò altre domande per la sua gestione...grazie ancora

    ieri alla fine ero riuscito a elaborare qualcosa...del tipo aggiungi elemento al database o eliminalo...e persino una visione della taballa con flexGrid...ma non so bene se era tutto "giusto", comunque sono contento, qualcosa sono riuscito a fare con le mie mani...

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.