ODBC richiede software run-time oltre a un file .exe da eseguire su MySQL e ORACLE SQL? [chiuso]

3

Sto scrivendo un software [sotto Windows] in C ++ che in seguito deve essere in grado di connettersi sia a MySQL sia a SQL ORACLE. Ora il software deve essere il più semplice possibile per l'utente.

Ora sto pensando di usare ODBC.

Se utilizzo ODBC, il software in seguito necessita di driver aggiuntivi o solo durante lo sviluppo? Quando ho il file .exe , ho bisogno di software aggiuntivo per farlo girare su qualsiasi computer o semplicemente sull'eseguibile?

    
posta xamiax 15.09.2014 - 16:40
fonte

2 risposte

3

La maggior parte dei driver ODBC non si basa su software aggiuntivo da installare. L'installazione del driver ODBC aggiunge tutti i componenti necessari. Oracle , tuttavia, è diverso.

Per Oracle, è necessario il software client Oracle per effettuare la connessione. Puoi trovare ulteriori dettagli sulla loro pagina Driver ODBC Oracle . Sebbene la pagina non dichiari esplicitamente che è necessario il software client, le Domande frequenti ODBC menziona che ha bisogno di SQL * Net application layer (che è una parte del software Client).

Aggiorna

Un amico mi ha ricordato che esistono driver Oracle di terze parti che non richiedono alcun codice Oracle. Gli esempi che mi ha dato costano, mentre i driver di Oracle no. Inserirò i link nei commenti.

    
risposta data 15.09.2014 - 17:29
fonte
0

Penso che tu stia mescolando una varietà di requisiti e concetti e hai bisogno di rivisitare la tua architettura.

  1. Una semplice applicazione utente NON è una funzione dei driver che hai! Questo è più su piattaforma, progettazione dell'interfaccia utente e trucchi di usabilità. Devi separare questi sforzi nella tua mente.
  2. Solo perché i tuoi dati hanno MySQL e Oracle non significa che la tua GUI abbia bisogno anche di MySQL e Oracle. Potresti avere (1) una fase di pre-elaborazione per combinare i dati o (2) aggiungere un livello API che renderà agnostico il database.

Non dovresti avere i tuoi utenti che accedono al tuo database direttamente comunque. Quindi, perché non creare un livello API / servizi (come REST) e fare in modo che la tua app acceda in questo modo. Da lì, il livello API può accedere a qualsiasi numero di database e non avrai alcuna preoccupazione per i driver sul lato GUI. È semplicemente più sensato farlo in questo modo e ridurre al minimo le potenziali insidie per gli utenti finali.

    
risposta data 15.09.2014 - 19:07
fonte

Leggi altre domande sui tag