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ù utili
  1. Anonimo
    2013-09-25T07:49:46+00:00

    Ciao Vladimiro,

    ODBC;Description=Primo;Driver=SQL Server;SERVER=ACER\SQLEXPRESS;Trusted_Connection=Yes;APP=2007 Microsoft Office system;; TABLE=dbo.SchedaCliente

    questo non va bene perche  DEVI  usare autenticazione di SQLServer

    questa affermazione di Mancini non è corretta, fintanto che lavori sul tuo computer puoi tranquillamente usare Trusted Connection e cambiare il tipo di connessione in seguito quando avrai diversi client che si collegheranno al server SQL e nel caso in cui i client non siano utenti di dominio.

    Confermo invece che i progetti ADP non sono  più supportati da Access 2013, fino al 2010, anche se un po' nascosti, c'erano ancora.

    Per quanto riguarda invece questa tua affermazione:

    Usando l'altra opzione: "Collega tabelle di SQL Server all'applicazione esistente" mi creerà la connessione via ODBC.  esatto

    Ho notato un'altra cosa, mentre per il progetto adp in SQL Management Studio mi ritrovo con una tabella nuova creata automaticamente dall'applicazione, scegliendo connessione ODBC debbo per forza scegliere (o almeno credo) tra questi database predefiniti dove comunque lascio sempre database master. sbagliato

    Ad un certo punto dell'upsize guidato dovrebbe chiederti se vuoi creare un database nuovo o se vuoi usarne uno esistente, chiaramente devi dirgli di creare un nuovo database perché quelli che vedi, sono db di sistema che è bene non andare a pasticciare.

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2013-09-25T04:59:29+00:00

    Facciamo una cosa per volta:

    ODBC;Description=Primo;Driver=SQL Server;SERVER=ACER\SQLEXPRESS;Trusted_Connection=Yes;APP=2007 Microsoft Office system;; TABLE=dbo.SchedaCliente

    questo non va bene perche  DEVI  usare autenticazione di SQLServer

    http://technet.microsoft.com/it-it/library/ms144284(v=sql.90).aspx

    http://msdn.microsoft.com/it-it/library/bb669066.aspx

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

    lasciando il segno di spunta dov'è, mi creerà un nuovo database adp che (in default) lo chiamerà ProvaCS  -> (credo voglia significare client/server)

    guarda un po' l'immagine del simbolo di Access che viene fuori

    e' vero  .adp esiste ancora in Access2007 ( non lo sapevo )

    cionnonostante te lo sconsiglio,  ( e non sono ancora convinto che sia supportato in Access2013 )

    un file .adp è troppo "potente"  si usava  ( quanto meno,  io lo usavo ) ai tempi di MSDN

    per modellare i DataBase di SQLServer2000 perche non c'era ManagementStudio

    Per ricapitolare

    Autenticazione SQLServer

    Dimentica l'upsize

    Creati un DB direttamente con ManagementStudio

    adesso devo andare pertanto non mi dilungo come al solito

    .

    Ma  Il servizio Sql Server Browser é avviato ??????

    .

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2013-09-24T08:43:49+00:00

    Ciao Mancini,

    veramente aspettavo una tua risposta sull'altro thread! :-)

    Allora, ho Access 2007, ancora non ho provato la connessione da un altro computer per cui tutto quello che sto cercando di fare: client, server ecc... appartiene esclusivamente al computer da dove ti sto scrivendo in questo momento. Quindi, qualsiasi prova di collegamento che vorrai fare per me va bene.

    La connessione la faccio ancora tramite trusted (se pensi che conviene cominciare da qui ad apportare le modifiche, posso disinstallare SQL e reinstallarlo inserendo la connessione tramite autenticazione SQL inserendo come Id di accesso sa e poi scegliendo una password).

    nella finestra della applicazione se ti fermi con il mouse sul nome della tabella puoi leggere

    le informazioni di connessione.

    ODBC;Description=Primo;Driver=SQL Server;SERVER=ACER\SQLEXPRESS;Trusted_Connection=Yes;APP=2007 Microsoft Office system;; TABLE=dbo.SchedaCliente

    Primo è il nome che ho scelto per ricordarmi... essendo la prima connessione! :-)

    Detto ciò, cerco di riepilogare.

    Una volta creato il file dsn, (che non dovrò più usare) apro un database (questa volta, senza troppa fantasia l'ho chiamato Prova) e tramite l'upsize guidato mi ritrovo questa immagine:

    https://skydrive.live.com/#!/view.aspx?cid=DFDFB766AA86F9D8&resid=DFDFB766AA86F9D8%21191&app=Word

    lasciando il segno di spunta dov'è, mi creerà un nuovo database adp che (in default) lo chiamerà ProvaCS  -> (credo voglia significare client/server)

    guarda un po' l'immagine del simbolo di Access che viene fuori

    https://skydrive.live.com/#!/view.aspx?cid=DFDFB766AA86F9D8&resid=DFDFB766AA86F9D8%21193&app=Word

    in cui mi ritroverò eliminate le query ma con apertura tabelle istantanee; anzi, la prima volta un po' più lenta e successivamente quasi istantanea.

    Usando l'altra opzione: "Collega tabelle di SQL Server all'applicazione esistente" mi creerà la connessione via ODBC.

    Ho notato un'altra cosa, mentre per il progetto adp in SQL Management Studio mi ritrovo con una tabella nuova creata automaticamente dall'applicazione, scegliendo connessione ODBC debbo per forza scegliere (o almeno credo) tra questi database predefiniti

    https://skydrive.live.com/#!/view.aspx?cid=DFDFB766AA86F9D8&resid=DFDFB766AA86F9D8%21195&app=Word

    dove comunque lascio sempre database master

    Spero che adesso sia più chiara la mia situazione e che in qualche modo possiate darmi una mano a risolvere questa lentezza nell'aprire la tabella.

    A proposito, potresti fare una prova cercando di aprire direttamente una tabella per vedere se è sempre così veloce come aprire una maschera o qualsiasi altra cosa?

    Vladimiro

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2013-09-24T04:30:21+00:00

    Scusami Cinzia se rispondo al posto tuo,  non voglio superarti

    1)che le tabelle collegate sono sempre tabelle collegate via ODBC

    Non sempre ODBC,  ma parlando di altro estenderemmo troppo il discorso

    ci sono anche Recordset, Query PassTrought, eccetera

    intendiamoci,  non sono proprio delle tabelle, ma ne fanno le veci

    e che per collegamento, a prescindere dalle tabelle di qualsiasi database, si può usare sempre lo stesso file dsn?

    Si

    2) che i progetti client/server sono sempre progetti adp creati tra l'altro ex-novo con l'aggiunta al nome del database delle lettere CS?

    Ti consiglio di dimenticare  .adp  se tu dici che vengono creato ExNovo suppongo che usi Access2003

    ma nelle versioni successive ti accorgerai che .adp non esiste piu

    Usa Access con tabelle collegate tramite ODBC

    Il CS non so cosa sia,  forse il default di Microsoft per rinominare il Client

    Detto ciò, ho scoperto (sicuramente l'acqua calda) che tabelle collegate via ODBC con un clic direttamente sulla tabella (con due record) per aprirsi (anche in maniera continuata) ci impiega 7 secondi , mentre per aprire una maschera (anche qui consecutivamente) con origine record stessa tabella ci impiega 2 secondi.

    Questo è un fatto strano  pensa che io ho per sfizio appena aperto una tabella di

    30.000 record e 50 campi

    collegata con un internet casalingo debole  ( il server è a 50 Km di distanza )

    il Server era una volta un modesto PC con modesto hardware

    ---- ci ha messo 2 secondi

    Per aprire una tabella di 2 record non devi poter contare i secondi, e istantanea

    Purtroppo mi sto sentendo un tantino scoraggiato

    Solitamente i rallentamenti dipendono da indici mancanti,  ma con 2 soli record non puo essere quello il motivo.

    _________________________________________________________________

    Chiariscici alcune cose

    Si tratta di .adp  oppure di Access ?

    Se si tratta di Access quale versione ?

    La applicazione ( .adp o Access che sia )  si trova sulla stessa macchina in cui hai installato SQLServer ?

    nella finestra della applicazione se ti fermi con il mouse sul nome della tabella puoi leggere

    le informazioni di connessione.

    --- Riportaci quello che leggi

    ________________________________________________________________________________________

    Io sono un po lungo con le risposte....ma

    se ci dai delle informazioni dettagliate sul server magari riesco a fare un file di test

    gia connesso alla tua stringa ( server )

    ( tanto se la tua è una prova in casa  mai nessuno potrà accedere dall'esterno )

    La risposta è stata utile?

    0 commenti Nessun commento
  5. Anonimo
    2013-09-24T04:29:46+00:00

    Purtroppo mi sto sentendo un tantino scoraggiato con questa migrazione a  SQL avendo come risultato prestazioni così lente!

    Vladimiro.

    Rivedi il progetto partendo da zero e *chiedendo aiuto anche sul forum di SQL Server* per il suo settaggio.

    La prima connessione a SQL Server da parte dell'applicazione può in effetti risultare lenta (ma non 7 secondi, a meno che non chieda una quantità di dati esorbitante) ma una volta avvenuta deve essere una scheggia.

    Io non riscontro i tuoi problemi nel collegarmi a SQL Server, e questo in vari contesti.

    La risposta è stata utile?

    0 commenti Nessun commento