Collegamento tabelle via ODBC

Anonimo
2013-09-22T18:18:58+00:00

Ciao,

possibile che per aprire una tabella formata da due record connessa via ODBC a SQL Server ci impiega 7 secondi mentre la stessa tabella collegata tramite progetto adp solo la prima volta che si apre ci impiega circa un secondo e successivamente la sua apertura è quasi istantanea?

C'è qualcuno che cortesemente mi fa luce se è un fatto normale o dipende da un qualcosa che non ho previsto o sbagliato?

Vladimiro.

Microsoft 365 e Office | Access | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

52 risposte

Ordina per: Più recente
  1. Anonimo
    2013-09-26T16:45:12+00:00

    Ciao Mancini e ciao Mauro,

    Come ti diceva Mauro le query ( ma è meglio chiamarle View  (Viste)) si creano direttamente in SQLServer e si salvano nello stesso DB

    Quelle che in Access si chiamano Query  in SQLServer si chiamano View ( Viste ) -- ( SELECT .... è una Vista )


    Se vuoi fare il corrispondente di una Query di Access in SQLServer segui la immagine

    https://skydrive.live.com/#cid=A571D4F7DF332873&id=A571D4F7DF332873%21128&v=3

    perfetto e: grazie per il disegno! :-)

    Una Vista  ( Non una Query ) fatta e salvata in SQLServer puo diventare una Tabella collegata in Access,   e su quella costruisci la maschera.

    Ma per il momento mi accontenterei di avere il "Classicissimo"  Server/Client   ( Tipo BE/FE )

    In SQLServer tieni solo le tanelle e in Access ti fai le tue Query ( Che è meglio abituarsi a chiamare Viste )


    va bene, però a me serve comunque capire il meccanismo.

    Oltre a sapere come si collega (sempre se ti va di spiegarmelo) ho bisogno di capire un'altra cosa. Poniamo di costruire una vista o una stored procedure (anche se ancora non so la differenza che ci passa tra le due), da lato client, come potrei richiamarla all'interno di una routine o comunque tramite codice VBA?


    No,   Io mi connetto tranquillamente con dei file .mdb ( 2003 ) a SQLServer2008R2

    ma sono convinto che sempre con .mdb potrei connettermi a SQLServer2012


    Non ho detto che non ci si può collegare ad una versione superiore di SQL Server rispetto ad un .MDB o  .accdb, semplicemente che una versione di SQL Server è programmata per una versione inferiore di Access. Ad esempio a me è capitato, dopo aver installato SQL Server 2012 che con Access 2007 mi impediva di fare l'Upsize guidato per incompatibilità di versioni.

    Adesso disinstallo e reinstallo nuovamente SQL con connessione mista.

    A risentirci Vladimiro


    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2013-09-26T04:36:54+00:00

    Ciao Mauro,

    <cut>

    Vladimiro

    Ti ha egregiamente risposto Mancini.

    Chiedo scusa per Views/Viste. Ho la versione inglese di SQL Server e non ho pensato a tradurre.

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2013-09-26T02:19:40+00:00

    .... Poi mi direte come fare per modificarla visto quello che c'è scritto riguardo la sicurezza:

    Creerai un utente specifico con pass specifica che abbia poteri limitati

    Ma questo è un passo successivo,  per il momento dimenticalo

    1)(potete fare cortesemente una prova?) facendo clic direttamente su una tabella e poi su  una maschera con origine record  stessa tabella, il tempo di apertura è lo stesso?

    Si,    per 100 record è istantaneo in entrambi i casi

    2) Ho provato a creare le query direttamente in SSMS, ma quando vado a salvarle, me le salva(sempre se non cambio percorso) in una cartella predefinita già creata in precedenza: SQL Server Management Studio Express/Projects.

    Come ti diceva Mauro le query ( ma è meglio chiamarle View  (Viste)) si creano direttamente in SQLServer e si salvano nello stesso DB

    Quelle che in Access si chiamano Query  in SQLServer si chiamano View ( Viste ) -- ( SELECT .... è una Vista )

    Se vuoi fare il corrispondente di una Query di Access in SQLServer segui la immagine

    https://skydrive.live.com/#cid=A571D4F7DF332873&id=A571D4F7DF332873%21128&v=3

    Domanda: dal client, come potrei utilizzarla? Ad esempio, volendo metterla come origine record di una maschera, come dovrei fare?

    Una Vista  ( Non una Query ) fatta e salvata in SQLServer puo diventare una Tabella collegata in Access,   e su quella costruisci la maschera.

    Ma per il momento mi accontenterei di avere il "Classicissimo"  Server/Client   ( Tipo BE/FE )

    In SQLServer tieni solo le tanelle e in Access ti fai le tue Query ( Che è meglio abituarsi a chiamare Viste )

    Qui la risposta è molto semplice. Siccome qualsiasi edizione di SQL Server avviene successivamente l'uscita di una nuova edizione di Access, lo stesso Access è programmato per la versione precedente di SQL Server; per cui avendo Access 2007, non potrei che avere SQL Server 2005

    No,   Io mi connetto tranquillamente con dei file .mdb ( 2003 ) a SQLServer2008R2

    ma sono convinto che sempre con .mdb potrei connettermi a SQLServer2012

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2013-09-25T20:43:01+00:00

    Ciao Mauro,

    Se creo una view (query) per interrogare un db di SQL Server, la view(query) la faccio direttamente in SQL Server e viene salvata nella cartella Views di quel db.

    non so cosa sia view e neanche l'ho trovata in SQL Server Management Studio Express.

    Quello che riesco a fare, una volta entrato in SSMS è creare una nuova query e progettarla nell'editor, quindi salvarla nell'unico modo in cui mi è possibile: come ho già spiegato precedentemente.

    Perché se devo lavorare con SQL Server, la view (query) o (meglio) le stored procedures per quel db lavorano molto meglio così.

    Se mi spieghi come fare te ne sarei grato.

    E comunque, ripeto che non riscontro problemi neppure collegandomi al db da una fonte esterna che contiene la query.

    Anche in questo caso mi servirebbe capire come fare. La query si trova in Documenti/SQL Server Management Studio Express/Projects.

    Poi non lo scrivo più, lo giuro... ;-) ma chiedi nel forum di SQL Server e rivedi il progetto da zero.

    Sto già in contatto con l'altro forum di SQL Server (MSDN), però non sempre mi hanno risposto.

    E, curiosità, perché una versione così datata di SQL Server Express? La 2012 no?

    Qui la risposta è molto semplice. Siccome qualsiasi edizione di SQL Server avviene successivamente l'uscita di una nuova edizione di Access, lo stesso Access è programmato per la versione precedente di SQL Server; per cui avendo Access 2007, non potrei che avere SQL Server 2005

    Vladimiro

    La risposta è stata utile?

    0 commenti Nessun commento
  5. Anonimo
    2013-09-25T17:29:20+00:00

    <cut>

    1. Ho provato a creare le query direttamente in SSMS, ma quando vado a salvarle, me le salva(sempre se non cambio percorso) in una cartella predefinita già creata in precedenza: SQL Server Management Studio Express/Projects. Domanda: dal client, come potrei utilizzarla? Ad esempio, volendo metterla come origine record di una maschera, come dovrei fare?

    Vladimiro

    Io continuo a non capire.

    Se creo una view (query) per interrogare un db di SQL Server, la view(query) la faccio direttamente in SQL Server e viene salvata nella cartella Views di quel db. Perché se devo lavorare con SQL Server, la view (query) o (meglio) le stored procedures per quel db lavorano molto meglio così. E comunque, ripeto che non riscontro problemi neppure collegandomi al db da una fonte esterna che contiene la query.

    Poi non lo scrivo più, lo giuro... ;-) ma chiedi nel forum di SQL Server e rivedi il progetto da zero.

    E, curiosità, perché una versione così datata di SQL Server Express? La 2012 no?

    La risposta è stata utile?

    0 commenti Nessun commento