Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Select... WHERE...
domenica 05 agosto 2007 - 10.07
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
denis.basei
Profilo
| Senior Member
222
messaggi | Data Invio:
dom 5 ago 2007 - 10:07
387_EsempioFiltro.zip
Buona domenica a tutti gli sfigati come me che il 5 agosto stanno ancora lavorando....
ho una windows form come quella che allego in databinding con un datatable. Le combobox e text box in alto servono per poter applicare dei filtri sui dati visualizzati nella datagridview. La mia domanda è questa. Dato che l'operatore può a sua discrezione filtrare i dati da 0 a 6 campi, la query che devo impostare nel dataadapter deve essere di questo tipo?
SELECT Sito, QuotaX, QuotaY, IntervalloSettimane, ..... WHERE
IDStato BETWEEN @pIDStato_I AND @pIDStato_F AND
IDTipologia BETWEEN @pIDTipologia_I AND @pIDTiplogia_F AND
BarCode BETWEEN @pBarCode_I AND @pBarCode_F AND ....
Denis
erongis
Profilo
| Junior Member
137
messaggi | Data Invio:
dom 5 ago 2007 - 17:40
Secondo me è meglio usare innazitutto le parantesi che rendono il tutto più chiaro.
Poi userei una cosa del genere: "SELECT * FROM miatavola WHERE 1 = 1 " così se anche l'utente non seleziona alcun filtro sei sicuro che uno c'è di sicuro e non occupa nulla. Poi ogni filtro devi aggiungere sempre " AND pluto = 23 " avendo l'accortezza di mettere uno spazio all'inizio ed alla fine.
Spero di essere stato chiaro-
Giscotech
Profilo
| Junior Member
140
messaggi | Data Invio:
dom 5 ago 2007 - 18:44
ma perchè non provi ad applicare il filtro direttamente sui controlli, per esempio intercettando l'evento SelectedIndexChanged delle combobox o il KeyPress delle textbox magari dopo l'invio. In questo modo applicando un filtro per volta potrai :
1) far visualizzare all'utente i risultati intermedi
2) le operazioni di filtraggio saranno più veloci
3) Le istruzioni sql + chiare e performanti.
Spero di esserti stato utile.
Giuseppe Scordo
Giscotech Informatics
erongis
Profilo
| Junior Member
137
messaggi | Data Invio:
dom 5 ago 2007 - 21:02
Si può anche fare, però dipende dalla pesantezza della query e quindi dai tempi di rispota del server. Cmq mi orienterei verso la leggibilità della query il più possibile.
Giscotech
Profilo
| Junior Member
140
messaggi | Data Invio:
lun 6 ago 2007 - 16:01
cosa intendi per pesantezza della query?
Io ho realizzato una cosa del genere su una tabella contenente circa 30000 articoli con tempi di risposta del sistema più che accettabili... ed il pc sul quale girava era anche un pò datato.
Giuseppe Scordo
Giscotech Informatics
erongis
Profilo
| Junior Member
137
messaggi | Data Invio:
lun 6 ago 2007 - 16:57
Intendo dire che forse intercettare il cambiamento di selezione della combo, può creare dei rallentamenti in base al n° di records in gioco.
Se cmq i tempi sono accettabili ben venga.
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !