Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di boots
    Registrato dal
    Oct 2012
    Messaggi
    1,626

    [C#] Scelta driver OLE DB per accedere ad Access: Jet o ACE?

    Ciao Ragazzi,

    Nell' applicazione (wpf - c#) che sto sviluppando dovrei collegarmi ad un database access. Ho dei dubbi su quale provider utilizzare con oledb.
    Se non ho capito male Jet è solo a 32bit, quindi dovrei cambiare il target a x86, inoltre è "vecchio".
    Con le "nuove" versione di Office MS ha rilasciato ACE, ma mi pare che bisogna installare il componente a parte(a meno che non si abbia office installato). Tra l'altro ho visto che ci sono diverse versioni (ACE.12, ACE.15, ACE.16) e quindi come faccio a sapere quale usare? non vorrei costringere ad installare una versione se già c'è n'è una sul sistema.

    Qualche consiglio?
    Grazie

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Quale estensione ha il file db che hai creato? Con quale versione di Access l'hai creato?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it L'avatar di boots
    Registrato dal
    Oct 2012
    Messaggi
    1,626
    In realtà potrei scegliere. Per adesso ho un mdb creato via c# con adox e jet 4 come provider (nn ho installato office sul pc). Però nulla mi vieta di fare un accdb con office più recente. Mi chiedevo cosa sia meglio e nel caso di ace, come comportarsi con le varie versioni

  4. #4
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Personalmente raccomando sempre il formato MDB versione 2002/2003.
    Il formato ACCDB non apporta alcun miglioramento, anzi ti provoca problemi di distribuzione (leggi dopo).
    Solo nell'uso interno di MSAccess vi sono dei miglioramenti, ma quando si usa il database esclusivamente come database non c'è alcun vantaggio dell'uno rispetto all'altro.

    Se distribuisci il programma, il vantaggio, enorme, del formato MDB è che il JET OleDb 4.0 è già preinstallato in tutte le versioni di Windows, per cui non devi installare nulla mentre l'ACE no, e quindi deve obbligatoriamente distribuirlo ed installarlo anche nel pc di destinazione.
    Questo indipendentemente dal fatto che vi sia già installato o meno Office. In sostanza, è inifluente, se usi ACCDB devi sempre distribuire il driver ACE.

    Riguardo alla questione 32bit/64bit è Microsoft stessa che incoraggia, raccomanda Office a 32bit, a scapito della 64bit.
    Vedi un po' tu.
    E, a proprosito di vecchio, apri la cartella del tuo pc e conta quanti programmi sono installati a 32bit e quanti a 64bit, tira tu le dovute conclusioni.

  5. #5
    Utente di HTML.it L'avatar di boots
    Registrato dal
    Oct 2012
    Messaggi
    1,626
    E' proprio questo il mio dubbio riguardo ad usare ace...d'altra parte jet è fermo e non vorrei che un giorno MS decida di eliminarlo da win 10 (visto la politica degli aggiornamenti). Se avessero fatto tipo sqlite non starei qui a farmi dei problemi...mi portavo dietro una dll e fine

  6. #6
    jet si può comunque installare

  7. #7
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Quote Originariamente inviata da boots Visualizza il messaggio
    E' proprio questo il mio dubbio riguardo ad usare ace...d'altra parte jet è fermo e non vorrei che un giorno MS decida di eliminarlo da win 10 (visto la politica degli aggiornamenti).
    Non accadrà mai, come non accadrà per altre librerie, che sono oramai parte integrante del S.O.

  8. #8
    Utente di HTML.it L'avatar di boots
    Registrato dal
    Oct 2012
    Messaggi
    1,626
    Ok...allora vado di jet.

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