misonsanbea

Utilizzo .mdb In Intranet Da .xls

4 messaggi in questa discussione

Ciao a tutti gli amici della Ml

Ho un file mdb utilizzato in intranet da un'applicazione .asp

Ho la necessità di utilizzare il file come base dati per aprire un file .xls sul quale effettuare filtri di ricerca.

Aprendo il file .xls mi viene evidenziato il seguente errore

errore di run-time '-2147467259 (80004005)

il modulo di gestione di database microsoft jet non è in grado di aprire il file

\\wrcvse\I$\Macchine\db\arkmacchine.mdb. Il file è già aperto con accesso esclusivo da un altro utente o è necessario disporre dell'autorizzazione per visualizzare i dati.

Ho provato a chiudere anche explorer, ma la risorsa rimane allocata.

Come posso agire per poter utilizzare in maniera condivisa il file .mdb anche fuori da intranet ?

grazie Moreno

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Credo che l'unica sia spegnere IIS.

Comunque i file MDB secondo me sono un pessimo modo per archiviare informazioni tramite siti web.

Hai pensato di usare SQL Express piuttosto?

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Grazie Pike per la cortese risposta.

Condivido pienamente con te che l'utilizzo di Access come base dati sia del tutto inefficace, ma attualmente la struttura dell'applicazione non può essere modificata.

Quindi preso atto di questa comune considerazione sulla risorsa, ti chiedo, e non potendo spegnere IIS per ovvi motivi di servizio, posso creare una stringa di connessione che mi consenta di utilizzare il file .mdb come input su cui per poter effettuare delle selezioni dal file .xls ?

grazie

Moreno :)

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Moreghi, per accedere a quei dati hai 2 opportunità.

-Opportunità 1: accedere con la condivisione file e stampanti a quel file .mdb. Per farlo devi consentire al fuori dell'ambito della tua rete locale l'accesso alla condivisione file e stampanti, magari con le dovute attenzioni in termine di crittografia di login e password adatte. Molto complicato e possibile, anche se sconsigliabile per la sicurezza e la praticità di gestione. Inoltre, il file .mdb dovrebbe essere accessibile in modalità esclusiva, per quanto ne so. Cosa che però IIS non gli consente. Ergo potrebbe rendersi necessario spegnere anche iis. Cosa che tu non puoi fare.

-Opportunità 2: migrare il file mdb in un database SQL. Rifare la parte di gestione dati tra IIS e SQL server, consentire l'accesso al solo SQL server tramite opportune politiche di accesso (e password adeguate). Tramite una connessione dati di tipo ODBC puoi importare i dati in excel. Ma non puoi modificare la struttura dell'applicazione web. Ergo anche questo non è possibile.

Rimanendo nell'ambito Microsoft, direi che siamo al capolinea, stando a quanto ricordo. So che si parla di accesso ai database .mdb in multiutenza, ma il database stesso deve essere costruito in maniera adatta. Con il rischio di perderne la consistenza per un errore su Excel.

Ora mi viene in mente una ulteriore possibilità: i dati quanto spesso vengono variati su IIS/mdb? Se la frequenza non è così elevata, potresti tirare su un server SQL Express (o anche MySQL, se preferisci) in cui importare la struttura dei dati del file .mdb e che puoi rendere disponibile tramite ODBC. Il file mdb non viene toccato, ma hai dati consultabili e sfogliabili in maniera indipendente, però debbono essere rinfrescati ogni volta che i dati sul file .mdb varia.

In ultima analisi, potresti fare una terza cosa ancora.

Il file .mdb è un contenitore di dati, ma può anche comportarsi come un "connettore".

Le tabelle, infatti, possono essere "interne" o "collegate".

Potresti fare una copia del file .mdb su cui lavorare.

Fare un upsizing su SQL server, copiandone la struttura e i dati all'interno.

Quindi fare un file access identico con dentro i collegamenti tramite driver SQL, sostituendole alle tabelle originali.

In questo modo, avresti circa questa struttura.

SqlServer<--Tabelle collegate-->File Access<--connettori dati-->IIS

Teoricamente per IIS non dovrebbe cambiare nulla, è compito del file .mdb andare a prendere i dati da SQL server e lo fa in locale.

Poi potresti pubblicare questo server e farlo accedere (sempre tramite ODBC) dalle applicazioni che ti occorrono.

Si tratta comunque di modificare il file .mdb (lavorando con le copie dovresti avere una ragionevole tranquillità di "non fare danni", ma non cambia in sintesi l'applicazione nè il sito.

Non è forse il massimo delle performance (visto che si tratta di un file access che collega tabelle su SQL, invece di SQL nativo, senza dimenticare i rallentamenti di ODBC via rete non locale), ma potrebbe funzionare.

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Crea un account o accedi per lasciare un commento

Devi essere un utente registrato per partecipare

Crea un account

Iscriviti per un nuovo account nella nostra community. È facile!


Registra un nuovo account

Accedi

Sei già registrato? Accedi qui.


Accedi Ora