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

    [c#] sincronizzazione DB da server a client

    Salve gente del World Wide Web,
    avrei un problema da risolvere e non so che strategia adottare.
    Su un pc (server) c'è un database da 1.500.000 record, che viene aggiornato di tanto in tanto.
    Al click di un bottone dovrei aggiornare questi record con il database che si trova su un secondo pc (client).
    In pratica ho un db su due pc, uno dei due lavora mentre l'altro no, tiene semplicemente una copia dei record. Qual è secondo voi la migliore strategia da adottare per sincronizzare il db?
    Io non ho una soluzione però credo di poter fare qualcosa di utile per non copiare ogni volta i record già presenti e non modificati.
    Potrei aggiungere un campo di tipo true/false ad ogni tabella. e quando questo campo è true vuol dire che è stato modificato. Quindi al momento della sincronia prenderò solo i campi modificati e non tutti.
    Ma per il resto come fare? Ci sono dei programmi appositi, semplici e gratuiti?
    L'importante non è partecipare.. ma
    vincere!
    Errare Humanum EST, perseverare.. a OVEST!

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,474
    La soluzione di sincronizzazione intendi implementarla tu usando il linguaggio C#, oppure ti serve qualcosa di già pronto?

    Chiaramente, qui si discute solo la prima ipotesi.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Tipo di database?
    Non basterebbe fare un 'backup' ?
    Ammsso sia possibile.

  4. #4
    Credo che debba fare tutto da C#.
    L'applicativo è installato in un Notebook.
    Dal Notebook devo passare i dati ad un PC fisso.
    L'applicativo l'ho implementato con Visual Studio 2008 e Sql Server 2005 Express. (C#)
    Pensavo di fare nel seguente modo:
    1. Controllare se i due computer sono collegati in LAN (tramite un Router o Wireless)
    2. Una volta verificata la connessione, copio i 2 file del DB direttamente in un cartella condivisa dal PC fisso.
    Pensate sia un ragionamento corretto?
    L'importante non è partecipare.. ma
    vincere!
    Errare Humanum EST, perseverare.. a OVEST!

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

    Ricordati però di fare il detach e succesivo attach di entrambi i database.
    Vedi il BOL (BookOnLine di SQLServer)


  6. #6
    Mmm, non mi ci sono messo, ho aggirato l'ostacolo creando un applicazione separata che copia i due file del db in un'unità disco separata.
    Sono sicuro che il problema si ripresenterà ed allora mi cimenterò con detach e attach.

    Grazie
    L'importante non è partecipare.. ma
    vincere!
    Errare Humanum EST, perseverare.. a OVEST!

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.