Newsgroup: it.comp.appl.access
Titolo: query pass through

Ho provato a creare una query come da oggetto.
Sebbene abbia in un mdb la tabella collegata via odbc ad MSDE, che non mi 
chiede usr/pwd , quando mando in esecuzione la query mi richiama il prompt 
di usr/pwd.
Come è possibile eliminarlo?
Che differenza c'è a questo punto tra tabelle collegate e query pass throug?

 ha scritto nel messaggio 
news:d0h6f9$va4$1...@hulme.interac.it...

La query PT la esegui direttamente sul server e ti rimbalzano sul client 
solo i risultati,
nelle query normali ti viene portata tutat la tabella e gestita sul client.
Le prestazioni sono decisamente diverse (pensa ad una tabella di 100.000 
record che deve retituirtene 1 solo)
ciao
MAssimiliano 

 ha scritto nel messaggio 
news:i7VWd.3725$tY2....@news.edisontel.com...

Ok questo è chiaro, quindi la tabella collegata mi carica tutti i record e 
poi esegue la query, mentre la PT carica solo il record selezionato.
La questione è che a parità di dns selezionato tra i vari dns creati quello 
della query non viene memorizzato e ad ogni esecuzione mi chiede quale dns 
scegliere e quale usr e pwd mettere.
come faccio ad indicare alla query PT di utilizzare quella tal tabella di 
quel tal db presente sul tal server ...
magari c'è la possibilità di emulare ( o meglio scrivere la stringa di 
connessione) direttamente dalla query... ma al momento mi sfugge ...
(forse xè siamo ancora primi in classifica e qui in vetta c'è poco 
ossigeno???)

 Che differenza c'è a questo punto tra tabelle collegate e query pass
throug?
La tabella collegata è interfacciata dal driver ODBC che fa da traduttore
tra il client e in questo caso Sql Server (puoi usare le funzioni native del
client come Format,Mid ecc che non esistono in Sql Server), viene aperta
utilizzando i cursori che ne permettono la variazione delle righe.
Una query Pass-Thraugh viene interpretata direttamente da Sql Server, non
usa cursori e per questo è in sola lettura.
In genere le Query Pass-Thraugh vengono usate per Select complesse o per
eseguire una serie di azioni (UPDATE/DELETE ecc) direttamente lato server.
Ciao Giorgio

 ha scritto nel messaggio 
news:d0h713$vav$1...@hulme.interac.it...

O forse perchè questa è la settimana paga e con tutti questi arbitri e 
dirigenti Figc da pagare
è dura mantenere la contabilità.
Ma questa query serve proprio a questo???
Gli stai organizzando un gestionalino?
MAssimiliano

 MAssimiliano
scusa MA, non č esattamente cosě, per fortuna il driver ODBC dove possibile
invia il comando corretto a Sql Server proprio come una query Pass-Through
Mi spiego meglio,
Questa Query
-----------------------
SELECT *
FROM dbo_Tabella
WHERE DATA Between #2004/01/01# AND #2004/12/31#
------------------------
Viene tradotta in modo da valutare direttamente sul server quali righe
restituire
Questa Query invece --------------
SELECT *
FROM dbo_Tabella
WHERE Format(Data,"yyyymmdd") DATA Between '20040101' AND '20041231'
--------------
pur rendendo lo stesso risultato costringe la restituzione di tutte le righe
e la valutazione da parte del client.
Ciao Giorgio

 ha scritto nel 
messaggio news:422c20cd$0$6302$5fc...@news.tiscali.it...

Grazie chiarissimo ed esaustivo! 


beh certo ... il gestionalino è quasi pronto
ah sai come mi pagano? Una fiat duna ... residuo di magazzino ...non vedo 
l'ora!

 quel tal db presente sul tal server ...
Ciao ciroteo
puoi usare il nome completo composto dalle parti  *Database* ;*Proprietatio*
; *Tabella*
Poniamo che la connessione sia stata effettuata sul Database5 e vuoi
interrogare una tabella che risiede nel Database1
basta fare
------------
SELECT *
FROM Database1.dbo.Tabella1
------------
Ciao Giorgio

 
Esiste la possibilità di impedire che chi utilizza l'applicazione
visualizzi tramite le proprietà la stringa di connessione ODBC per
questioni di sicurezza ?
Grazie.

 questioni di sicurezza ?
Ciao Andrea,
Se utilizzi l'autenticazione tramite username e password no.
L'alternativa č quella di accedere a Sql Server tramite l'autenticazione di
Window, in questo modo non viene richiesta nessuna password perņ devi
aggiungere i vari utenti di dominio o di Workgroup a Sql Server e assegnare
i permessi ai vari databases.
per maggiori info guarda questo thread.
-----------------
http://www.google.it/groups?th=f12a3f912cafac8f#link10
-----------------
Ciao Giorgio

 
Il problema è che si tratta di Oracle 9.2 ...
non so proprio come fare !
L'utente dovrebbe utilizzare l'applicazione Access senza però
conoscere ( o poter indagare per reperirla) la password dell'utente di
database.