Apache Cordova e Android - SQL con Javascript: database SQL Web

Sommario
Ci concentreremo solo su Android e come memorizzare i dati con Database SQL Web e JQuery Mobile.
In un precedente tutorial abbiamo visto come sviluppare una semplice applicazione con Apache Cordova, Jquery mobile, html5 e css che ci permettesse di aggiungere record ad un database Sqlite, in questo caso vedremo cosa fa ogni funzione all'interno del codice.
 Funzione Opendatabase()
La funzione opendatabase viene utilizzata per creare un database o aprirlo se è già stato creato, abbiamo bisogno di quattro parametri, nome del database, versione, nome del database che verrà visualizzato e la dimensione in byte. Quando creiamo e apriamo un database, questo viene salvato nella variabile che assegniamo in questo caso db.
 function CreartDB () {db = window.openDatabase ("Clienti", "1.0", "Elenco clienti", 1000000);}
Possiamo anche eseguire la funzione quando avvii l'applicazione sul dispositivo Android
Mentre l'applicazione si avvia, chiamiamo la funzione che crea il database
 // Aggiungiamo un evento all'avvio dell'applicazione document.addEventListener ("deviceready", DeviceHome, false); function DeviceHome() {db = window.openDatabase ("Client", "1.0", "Elenco client", 1000000); } 
Potrebbe anche essere necessario fare dei compiti durante l'avvio dell'applicazione.Nel caso precedente, abbiamo visto come chiamare una funzione quando l'applicazione era già stata avviata.
 funzione Avvio () {document.addEventListener ("deviceready", ConfigureApp (), false); } function ConfigureAPP () {document.addEventListener ("resume", OtraFuncion (), false); } 
Dall'HTML con l'evento onload, cioè durante il caricamento della pagina chiamiamo la funzione di avvio, mentre all'avvio (deviceready) chiama la funzione ConfigureAPP che verrà eseguita in background (resume).
Alcuni eventi che possiamo utilizzare disponibili su Android sono:
dispositivo pronto: questo evento si verifica all'avvio dell'applicazione.
pausa: Questo evento viene generato quando un'applicazione viene avviata in esecuzione in background.
riassume: Questo evento si verifica quando l'applicazione passa dallo sfondo al primo piano.
in linea e non in linea: Questo evento si verifica quando l'applicazione si connette o si disconnette da una rete.
Ci sono altri eventi legati all'interazione con il telefono, ma vedremo quelli che sono più legati al controllo del codice.
 Funzione di transazione () 
Quando vogliamo effettuare una transazione di tipo SQL utilizziamo il metodo della transazione. La funzione è composta da tre parametri: una funzione con la query sql, una funzione per mostrare l'errore se la query non riesce e una funzione per mostrare se la query ha avuto successo.
La funzione di interrogazione verrà svolta tramite il metodo ExecuteSQL. Creeremo tre funzioni da eseguire in catena all'avvio dell'applicazione, queste sono:
consultareDB: con query sql
erroreCDB(): mostrerà se c'è un errore nella query sql
CDB di successo (): mostrerà un messaggio se la query è andata a buon fine.
 script charset = "utf-8"> // All'avvio dell'applicazione eseguiamo alcune query sql document.addEventListener ("deviceready", IniciaSQL, false); function StartSQL() {var db = window.openDatabase ("Contatti", "1.0", "Elenco contatti", 400000); db.transaction (consultDB, errorCB, successCB); } function queryDB (tx) {// Crea la tabella dei contatti se non è stata creata tx.executeSql ('CREA TABELLA SE NON ESISTE Contatti (id, nome, email)'); // Inserisci i dati nella tabella tx.executeSql ('INSERT INTO Contacts (id, name, email) VALUES (1, "José Cordova", ”[email protected]”)'); tx.executeSql ('INSERT INTO Contacts (id, nome, email) VALUES (2, “Maria Alpei”, ”[email protected]”) '); } // funzione per rilevare l'errore nella funzione di transazione errorCDB (error) {alert ("Errore nella query SQL:" + error.code); } // Funzione per visualizzare un messaggio di successo function exitCDB () {alert ("Query riuscita!"); } 
Come interrogare i dati e visualizzarli utilizzando una query sql che restituisce un tipo di matrice o matrice SQLResultSetList
 funzione queryDB (tx) {tx.executeSql ('SELECT * FROM Contatti', [], successCDB, errorCDB); } function db success (tx, results) {// otteniamo il numero di righe var totalcontacts = results.rows.length; // mostriamo il numero di contatti console.log ("Total Contacts:" + totalcontacts); // Mostriamo i record in un ciclo in cui mostriamo ogni campo dell'array for (var i = 0; i
La funzione SQLResultSetList ha la proprietà rows che contiene i record per ogni riga della tabella interrogata. Questo array viene attraversato con la funzione rows.item (i) e il numero di riga. Dobbiamo anche indicare quale campo di quella riga vogliamo mostrare. Esempio results.rows.item (i) .name.Possiamo anche mostrare questo campo in qualche elemento html come un campo di testo che fa riferimento al suo identificatore.
 funzione querySuccess (tx, results) {var len = results.rows.length; document.getElementById ("divshow"). innerHTML + = "
andareNome

"; per (var i = 0; i"+ risultati.righe.elemento (i) .n nome +""; } } 
Quindi nel codice html dobbiamo avere in questo caso il div con l'identificatore divmotrar in modo che venga visualizzata la tabella con i dati della query.
Le parentesi nella funzione executeSQL vengono utilizzate per inviare parametri questa proprietà è facoltativa poiché non sarà sempre necessario inviare parametri alla query SQL Se vogliamo inviare parametri a una query ad esempio per aggiornare i dati dal database:
 funzione Update (id, nome) {db.transaction (funzione (tx) {tx.executeSql ("AGGIORNAMENTO Contatti SET nome" =? WHERE id =? ", [nome, id], errorCDB);}); 
Possiamo anche accedere a funzioni con eventi da html come fare clic su un pulsante. Vediamo un esempio come se avessimo il file indice di default di un progetto Apache Cordova possiamo aggiungere il codice per il database e il codice html con il pulsante Registra, cliccando sul pulsante Registra verrà eseguita una funzione che inserirà i dati nel Banca dati.

Incidere
Vantaggi dello sviluppo con WEB SQL DatabaseNon è necessario che il programmatore o gli sviluppatori conoscano tutte le piattaforme poiché funziona su qualsiasi piattaforma o dispositivo. Browser, Android, IOS, ecc, in alcuni casi con modifiche minime. Ciò consente di risparmiare molto tempo poiché anche grafici o webmaster possono lavorare senza essere necessariamente programmatori, anche la conoscenza di Jquery che viene applicata allo sviluppo web è pienamente utilizzata nello sviluppo di applicazioni Apache Cordova.
Svantaggi dello sviluppo con WEB SQL DatabaseIl database Web Sql utilizza il plugin Sqlite come mezzo per elaborare le informazioni e per le transazioni di dati con la piattaforma nativa, utilizza JSON, che rende complesso l'uso di diverse funzioni e parametri per gestire i dati.
È un progetto diverso da Android quindi incorpora molte funzionalità dalla versione nativa.Ti è piaciuto e hai aiutato questo Tutorial?Puoi premiare l'autore premendo questo pulsante per dargli un punto positivo

Aiuterete lo sviluppo del sito, condividere la pagina con i tuoi amici

wave wave wave wave wave