|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Dec 2001
Città: Lecce
Messaggi: 3936
|
[C#] Connessione remota ad access
Sto scrivendo un'applicazione che lavora con dei db access sia in locale che in remoto, ora quello che mi chiedo, la connessione ai db in locale l'ho implementata con JET, se volessi collegarmi ad un db access che gira su IIS cosa/come dovrei fare?
|
![]() |
![]() |
![]() |
#2 | |
Senior Member
Iscritto dal: Mar 2006
Città: Genova
Messaggi: 2457
|
Quote:
devi svilupparlo te il codice per far accedere al db da remoto? se è così io farei un web-service però dipende dalle esigenze che hai.
__________________
tag XBOX live Aldair74 Nick PSNRiordian Affari conclusi con: Anf3t4m1n Krocca magomagnani amoredipippa mone_82 raszagale bizzy89 Andrew_db |
|
![]() |
![]() |
![]() |
#3 | |
Senior Member
Iscritto dal: Dec 2001
Città: Lecce
Messaggi: 3936
|
Quote:
posso accedere tramite odbc al db remoto? Ultima modifica di DarkSiDE : 23-03-2007 alle 11:27. |
|
![]() |
![]() |
![]() |
#4 | |
Senior Member
Iscritto dal: Mar 2006
Città: Genova
Messaggi: 2457
|
Quote:
Allora non posso aiutarti, immagino si possa fare ma non ho mai affrontato una problematica del genere, bye ![]()
__________________
tag XBOX live Aldair74 Nick PSNRiordian Affari conclusi con: Anf3t4m1n Krocca magomagnani amoredipippa mone_82 raszagale bizzy89 Andrew_db |
|
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Jan 2000
Città: Provincia di Parma
Messaggi: 724
|
Che il database risieda in locale o in remoto, devi sempre utilizzare il provider System.Data.Oledb.
Poi il db non "gira" in IIS, ma ci sarà un'applicazione web hostata su IIS che accede al database Access e fa una visualizzazione web delle informazioni. Per accedere al db devi fare in modo che la cartella nella quale è contenuto il file MDB sia condivisa, poi specifichi il percorso di rete nella connection string in uso dalla tua papplicazione. Questo vale in un contesto di rete locale; se il tuo client è al di fuori dalla rete locale, hai per forza bisogno di un qualcosa che ti faccia da tramite (es. web service). Ciao
__________________
My Pc: Case Enermax Chakra - PSU Corsair HX520 - Gigabyte P35-DS3R - Core2 Duo E6550 - 6 Gb RAM Geil PC800 - 2x WD Caviar SE 320Gb (Raid1) - Xfx GeForce 8600Gt - Master Pioneer DVR111D - Samsung SM T220 - S.O. Windows 7 Ultimate x64 SP1 My blog: http://blogs.ugidotnet.org/alby |
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
ti faccio un esempio però relativo a MySql (che usa un suo connettore). In linea di principio credo che non si discosti molto da una connessione in remoto su iis:
Codice:
private string pathToDb = "database=mio_db;server=192.168.1.125;port=3306;user id = raoul; password=raoul; try { MySqlConnection cn = new MySqlConnection(pathToDb); cn.Open(); ...... } catch(MySqlException ex) { MessageBox.Show(ex.Message.ToString()); }
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek ![]() |
![]() |
![]() |
![]() |
#7 | |
Senior Member
Iscritto dal: Mar 2006
Città: Genova
Messaggi: 2457
|
Quote:
però a quanto dice lui deve accedere direttamente sul db, probabilmente avrà il file access in una directory virtuale.
__________________
tag XBOX live Aldair74 Nick PSNRiordian Affari conclusi con: Anf3t4m1n Krocca magomagnani amoredipippa mone_82 raszagale bizzy89 Andrew_db |
|
![]() |
![]() |
![]() |
#8 | |
Senior Member
Iscritto dal: Dec 2001
Città: Lecce
Messaggi: 3936
|
riconosco di essermi espresso male e vi chiedo scusa
![]() Il problema è questo: ho un sito che si appoggia a un database. Ora, da remoto, voglio accedere a quel database e sincronizzarlo con il database che ho sul mio database in locale. Se il database remoto è registrato con il dsn, non possibile accedervi tramite odbc? Quote:
|
|
![]() |
![]() |
![]() |
#10 |
Senior Member
Iscritto dal: Jan 2000
Città: Provincia di Parma
Messaggi: 724
|
Se usi .NET, non ha senso che tu prenda in considerazione ODBC, ma ti conviene usare i providers nativi di ADO.NET (nel tuo caso, System.Data.OleDb).
considerando l'esempio che ha i postato, devi condividere la cartella d:\myweb (o comunque la cartella che contiene il Db), fare: Codice:
string connStr = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=\\servername\sharename\db.mdb;User Id=Admin"; using (OleDbConnection conn = new OleDbConnection(connStr)) { try { conn.Open(); // Vari OleDbCommand per accedere ai dati... } catch (oleDbExcelption ex1) { // Gestione errori.... } finally { if (conn.State == ConnectionState.Open) conn.Close(); } } ![]()
__________________
My Pc: Case Enermax Chakra - PSU Corsair HX520 - Gigabyte P35-DS3R - Core2 Duo E6550 - 6 Gb RAM Geil PC800 - 2x WD Caviar SE 320Gb (Raid1) - Xfx GeForce 8600Gt - Master Pioneer DVR111D - Samsung SM T220 - S.O. Windows 7 Ultimate x64 SP1 My blog: http://blogs.ugidotnet.org/alby |
![]() |
![]() |
![]() |
#11 | |
Senior Member
Iscritto dal: Dec 2001
Città: Lecce
Messaggi: 3936
|
Quote:
![]() Come già detto ho già usato ado.net per i db in locale e lo userò anche per i db in lan, purtroppo ho dimenticato che access non fa server ed ho fatto una gran confusione. Da quanto ho capito le uniche soluzioni sono o scrivere un semplice webserver che prende le query in input, le lancia su access e restituisce il risultato o utilizzare rds che a quanto pare, fa cagare. |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 01:40.