Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17

Discussione: [ACCESS] DB Condiviso

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    203

    [ACCESS] DB Condiviso

    Ciao a tutti,

    avrei bisogno di una info, devo creare un DB che dovrà risiedere
    in una cartella condivisa in rete, questo db verrà usato contemporaneamente
    da circa 8 / 10 persone.

    C'è una procedura particolare da seguire o basta creare un normale database ?

    Grazie mille in anticipo!

  2. #2
    io ne ho realizzato alcuni

    perchè il traffico sulla rete sia minimo la prima cosa da fare è dividere il database in due parti

    in una, chiamata back-end (BE), risiederanno i dati (cioè le tabelle); deve risiedere sul server

    l'altra, chiamata front-end (FE), conterrà tutti gli altri oggetti di access, vale a dire query, maschere, moduli ecc, mentre le tabelle saranno solo collegate a quelle del back-end; dovrà risiedere su ogni pc-utente


    molto di quello che so e so fare l'ho appreso da http://www.sitocomune.com

    Abeti nel deserto? Nemmeno l'ombra (A. Bergonzoni)
    _________________________________
    www.like-a-loft.com

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    203
    grazie mille per la risposta...

    ma dato che il traffico in rete non è un problema
    in quanto è rete locale e non abbiamo problemi del genere...

    pensi che se faccio un db unico posso avere problemi di altro tipo ?

    Grazie!

  4. #4
    Originariamente inviato da S0nic
    ma dato che il traffico in rete non è un problema
    in quanto è rete locale e non abbiamo problemi del genere...

    pensi che se faccio un db unico posso avere problemi di altro tipo ?

    Grazie!
    si. ti faccio un esempio banale anche se magari non presente nel tuo db.
    allora tramite recorset oppure creando una tabella in appoggio fai un trasferimento dati in excel, se due utenti in contemporanea richiedono quella procedura il db va in errore.

    la divisione del db in due db (back-end e front-end) come ti è stato suggerito è la strada corretta da seguire.
    Il numero di pecorelle scannate dai pastori è di gran lunga superiore al numero di pecorelle mangiate dai lupi. Per cui, se qualcuno si proponesse di essere il vostro pastore per salvarvi dai lupi, pensateci bene.

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    203
    ok
    ora ho capito meglio
    grazie!

    vedrò di documentarmi su come procedere....

    oltre al sito indicato prima avete altre guide ?

    tnks

  6. #6
    Utente di HTML.it L'avatar di wallrider
    Registrato dal
    Apr 2003
    Messaggi
    2,752
    Originariamente inviato da nicolamanzoni
    ...
    dovrà risiedere su ogni pc-utente
    ...
    come hai ovviato alle manutenzioni sul DB frontend (tipo modifiche query o maschere, aggiungere/rimuovere tabelle collegate)? te lo chiedo perchè farsi il giro di tutti i pc mi sembra un po' dispendioso
    RIP Cicciobenzina 9/11/2010

    "Riseminaciceli, i ceci nell'orto"

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    203
    Originariamente inviato da wallrider
    come hai ovviato alle manutenzioni sul DB frontend (tipo modifiche query o maschere, aggiungere/rimuovere tabelle collegate)? te lo chiedo perchè farsi il giro di tutti i pc mi sembra un po' dispendioso
    già
    converrebbe mettere il frontend sempre in un'altra cartella condivisa...
    ma funzionerebbe ?

  8. #8
    Originariamente inviato da wallrider
    come hai ovviato alle manutenzioni sul DB frontend (tipo modifiche query o maschere, aggiungere/rimuovere tabelle collegate)? te lo chiedo perchè farsi il giro di tutti i pc mi sembra un po' dispendioso
    io ho predisposto nel front-end due tabelle chiamate versione_caricata (questa risiede proprio sul front-end) e nuova_versione (collegata dal back-end) composte entrambe da un solo campo chiamato versione.

    in apertura del db faccio verificare se il campo versione della tabella versione_caricata corrisponde al campo della tabella nuova_versione, se sono uguali non faccio nulla altrimenti tramite questo codice (non è mio):
    codice:
    ******************************************************************
    'start code
    '*******************************************************************
    'Nome:        Compact.vbs
    'Descrizione: compatta e riapre l'mdb in uso
    'Autore:      Federico Luciani
    'Creato:      10/11/2000
    'Utilizzo:    dall'mdb eseguire:
    '   Dim strPath As String
    '   strPath = "wscript.exe " & "C:\Temp\Compact.vbs " & Chr$(34) & CurrentDb.Name & Chr$(34)
    '   Call Shell(strPath, vbNormalFocus)
    '
    '*******************************************************************
    
    Set objArgs = WScript.Arguments
    Call Init()
    
    Dim objMDB
    Dim objFSO
    Dim strMdbFile
    
    'nome e path dell'mdb passato come argomento allo script
    strMdbFile = objArgs(0)
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    
    'si collega alla sessione access aperta
    Set objMDB = WScript.GetObject(strMdbFile)
    
    'minimizza la finestra di access
    objMDB.RunCommand 11
    
    'chiude l'mdb in uso
    objMDB.CloseCurrentDatabase
    
    'copia il file
    objFSO.CopyFile "\\percorso\nome db.mdb", "percorso\nome db.mdb"
    
    
    'riapre l'mdb compattato
    objMDB.OpenCurrentDatabase strMdbFile
    'maximizza la finestra di access
    objMDB.RunCommand 10
    Set objFSO = nothing
    Set objMDB = nothing
    
    
    '*******************************************************************
    'Controlla che il parametro sia un file mdb
    '*******************************************************************
    Sub Init()
     'controlla che l'argomento sia un mdb
      If objArgs.Count  < 1 Then WScript.Quit
      If Right(objArgs(0),4) <> ".mdb" Then
        Msgbox "Il file selezionato non e' un mdb.",  16, "Errore!"
        WScript.Quit
      End If
    End Sub
    '*******************************************************************
    'end code
    '*******************************************************************
    salvato come file .vbs faccio aggiornare la versione in locale.

    in questa maniera l'unica cosa che devo fare è modificare il numero della versione nelle tabelle prima di copiare il db nella cartella predisposta per le nuove versioni.

    oltretutto in questa maniera ise qualche operatore è assente aggiornerà il db sempre con la versione più recente al suo rientro.
    Il numero di pecorelle scannate dai pastori è di gran lunga superiore al numero di pecorelle mangiate dai lupi. Per cui, se qualcuno si proponesse di essere il vostro pastore per salvarvi dai lupi, pensateci bene.

  9. #9
    Originariamente inviato da S0nic
    già
    converrebbe mettere il frontend sempre in un'altra cartella condivisa...
    ma funzionerebbe ?
    e ritorneresti al punto di partenza
    Il numero di pecorelle scannate dai pastori è di gran lunga superiore al numero di pecorelle mangiate dai lupi. Per cui, se qualcuno si proponesse di essere il vostro pastore per salvarvi dai lupi, pensateci bene.

  10. #10
    Originariamente inviato da S0nic
    ok
    ora ho capito meglio
    grazie!

    vedrò di documentarmi su come procedere....

    oltre al sito indicato prima avete altre guide ?

    tnks
    dimenticavo:
    il sito del mitico, grande @alex: http://www.alessandrobaraldi.it/
    il sito di Karl Donaubauer: http://www.donkarl.com/it/
    Il numero di pecorelle scannate dai pastori è di gran lunga superiore al numero di pecorelle mangiate dai lupi. Per cui, se qualcuno si proponesse di essere il vostro pastore per salvarvi dai lupi, pensateci bene.

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.