Newsgroup: it.comp.programmare.win32
Titolo: Accedere ad un database da remoto

s.o.: Windows 98 linguaggio: Visual C++ 6.0 architettura: document/view 
Help me please! Sono davvero allo sbando con questo problema: ho
realizzato un database con Microsoft Access 2000 e sviluppato
un'applicazione che consente di eseguire le classiche operazioni su
record in questo DB. Ad esso è possibile accedere da qualsiasi client
facente parte della mia rete LAN (Microsoft based); infatti,
nell'applicazione fornisco il percorso di rete del DB e tutto è risolto
da Windows tramite la mappatura dell'unità di rete corrispondente.
Inizialmente, come tecnica di accesso ai dati, ho utilizzato ODBC,
successivamente ho proseguito con gli oggetti DAO. Veniamo al dunque:
devo permettere ad altri client esterni alla rete (e presenti
sull'intero territorio nazionale) di accedere a questo DB e svolgere le
classiche mansioni di gestione (add, edit, remove, ecc.). Questi possono
collegarsi esclusivamente con router CISCO aventi un indirizzo IP
univoco. DAO non permette da remoto il collegamento al DB sapendo
l'indirizzo IP del server su cui risiede il DB. Come posso fare? Non ho
le conoscenze opportune a riguardo del modello COM altrimenti avrei
utilizzato un database ORACLE e le tecniche OLE DB di Visual C++. Anche,
mi sembra, che SQL Server 2000 permetta solo il collegamento tramite il
modello COM...praticamente sono all'ultima spiaggia e non so come
risolvere questo problema. Possibile che non ci sia una tecnica per dire
da remoto "...il DB si trova all'indirizzo IP 10.56.34.21 (per
esempio)...aprilo e fai quello che ti è consentito..." Vi prego
aiutatemi, ho bisogno di qualche consiglio (che non sia COM). Sergio 

aiutatemi, ho bisogno di qualche consiglio (che non sia COM). Sergio 
al di la' di OLE DB, ti serve un DB che risponda ad un indirizzo IP,
quindi ORACLE, SQL SERVER o MSDE, MYSQL, Interbase o FireBird, quello
che ti pare, poi magari configuri una connessione ODBC che punti a
quel DB tramite IP, pero' devi lasciare perdere Access, in ogni caso
un passaggio ad ADO e' consigliato, anche se forse dovrai riscrivere
la funzioni di accesso al DB.
ciauz
Vincenzo 'lo sciamano'   Bologna (ITALIA-ITALY)
Homepage  
http://www.geocities.com/vincesalsero/
Membro Fondatore del CSM (Club Seghe Mentali)
http://www.seghementali.org

Ciao Vincenzo, grazie per la tua risposta ma i miei dubbi permangono!
Non ho problemi a fare un "porting" del mio DB su ORACLE o SQL Server
2000 (meglio il primo perchè è già bello e configurato sul mio server).
Con ORACLE so crearmi il servizio che, grazie all'IP, punta al database
della mia applicazione. Il problema è da Visual C++: come creo la
connessione a quel servizio? Con OLE DB è necessario avere conoscenze
sul modello COM (ed io, ogni volta che leggo qualcosa a riguardo, inizio
a piangere in cinese) perchè si usano le interfacce! ADO sono pronto a
studiarlo ma ho bisogno di qualche ulteriore tuo suggerimento in
proposito. Indicami la retta via...se non ti dispiace. Grazie 1000,
Sergio

proposito. Indicami la retta via...se non ti dispiace. Grazie 1000,
non so dove, ma sul sito Microsoft ci dovrebbe essere qualche esempio
di come usa ADO in VC++, mi dispiace ma non so indicarti dove sia,
cerca anche in MSDN, in attesa pero' dovresti utilizzare ODBC.
ciao


 Ancora grazie per la tua disponibilità. In effetti già tempo addietro
(circa 5 mesi fa) avevo configurato un servizio con ORACLE basato su un
DB relazionale. Il servizio faceva riferimento ad un indirizzo IP
(quello del server laddove è situato il DB). Da Visual C++ la
connessione avveniva tramite il Driver per Oracle ODBC: basta
selezionare il servizio e il gioco è fatto. Certo...è ODBC, tecniche di
accesso ai DB abbastanze "paleolitiche"...ma funziona! Adesso dovrò
studiarmi ADO per poter avere delle funzioni più avanzate (tipo Seek e
company). Che dirti? Intanto grazie...se hai qualche altra idea fammelo
sapere. Buona giornata e buon lavoro. Sergio PS: vediamo Microsoft che
dice....