3 pagine in totale: <<Indietro 1 2 [3]
Creazione automatica della query
Attraverso l'uso di script lato client è possibile avere il quasi completo controllo sugli elementi contenuti nella pagina, caratteristica utilizzata dal nostro script per costruire l'espressione della query.
Questo è ottenuto grazie alla cattura dell'evento OnClick sugli elementi <RADIO BUTTON> (primo riquadro) e <SELECT> (secondo riquadro), il quale evento viene generato col semplice click dell'utente. Alla selezione di un tipo di query e una tabella, verrà richiamata la funzione Javascript buildSql, incaricata di costruire l'espressione basandosi sulle scelte operate dall'utente; per le query di comando (UPDATE, INSERT INTO e DELETE) sarà fornita anche la corretta sintassi da rispettare.
Procedendo con l'esecuzione della query (tasto [ Prosegui >> ]), otterremo un ricaricamento della pagina ed esecuzione della query specificata, con verifica e intercettamento degli errori eventualmente restituiti da ADO.
Nel caso in cui la query abbia una corretta sintassi, otterremo due tipi di risultati:
| Tipo Query | Risultato |
| SELECT | Viene visualizzata una tabella HTML corrispondente all'immagine del recordset, a patto che questo contenga almeno un record. |
| UPDATE, INSERT INTO, DELETE | Verrà visualizzato il numero di record su cui la query ha avuto effetto. |
Degna di nota è la soluzione adottata per costruire la tabella HTML (nel caso di query SELECT): il metodo
Recordset.GetString()La sintassi del metodo
Recordset.GetString()ADO_Recordset.GetString (formato, record, sep_colonna, sep_riga, carattere_null)Dove:
| ADO_Recordset | Il nome dell'oggetto ADO Recordset contenente i risultati |
| Formato | formato dei dati da restituire (omesso = adClipString) |
| Record | numero di record da considerate (se omesso = tutti) |
| sep_colonna | separatore di colonna |
| sep_riga | separatore di riga |
| carattere_null | Carattere da sostituire in presenza di valori NULL |
Il codice necessario alla creazione di una tabella HTML può essere considerato come stringa delimitata da TAG, più che da delimitatori. Infatti, la nostra soluzione utilizza i seguenti elementi:
| formato | Omesso, quindi ASCII delimitato |
| Record | Omesso, quindi tutti i record |
| sep_colonna | </TD><TD> |
| sep_riga | </TR><TR><TD> |
| carattere_null | (simbolo [spazio] in HTML) |
Questo ci consente la costruzione automatica del corpo della tabella, senza intestazione e TAG (<TABLE>?</TABLE>), che possiamo provvedere ad aggiungere con un minimo sforzo.
Questo metodo risulta di gran lunga più performante rispetto a metodi più comuni, come cicli di scorrimento del recordset oppure il metodo
Recordset.GetRows()Conclusioni
Apprezzerete sempre di più, col tempo, questa semplice applicazione, che potrebbe estendere le proprie funzionalità ad altre fonti dati di tipo Client/Server, come MS Sql Server, Sybase, Oracle. Sono certo che sarete voi a suggerire possibili scenari futuri come già avvenuto con mio intenso piacere.
3 pagine in totale: <<Indietro 1 2 [3]
Attenzione: Questo articolo contiene un allegato
Contenuti dell'articolo
- Pagina 1
- Pagina 2
- Pagina 3
- Galleria fotografica dinamica con ASP.NET AJAX
- Usare Search come un servizio nei tuoi siti e nei tuoi client
- Mappe nel tuo sito con Virtual Earth
- Integrare Windows Live ID, Contacts e Presence API nelle tue applicazioni
- Introduzione ai cloud based service con Windows Live Services
- Realizzare un custom extender AJAX con ASP.NET 3.5
- Tracciare le modifiche ai dati e allineare i datawarehouse con il Change Data Capture in SQL Server 2008
- Le nuove caratteristiche di IIS 7.0 per sviluppatori e sistemisti
Aggiungi un nuovo commento »»»
Per inserire un commento, devi registrarti alla nostra community.







Difficoltà
Stampa
Download


10annidi.ASPItalia.com: iscriviti alla competizione e vinci fantastici premi ogni mese!
