Apache Cordova i Android - SQL s Javascript: Web SQL baza podataka

Sadržaj
Usredotočit ćemo se samo na Android te kako pohraniti podatke Web SQL baza podataka i JQuery Mobile.
U prethodnom smo vodiču vidjeli kako razviti jednostavnu aplikaciju s Apache Cordovom, Jquery mobile, html5 i css koja bi nam omogućila dodavanje zapisa u bazu podataka Sqlite, u ovom slučaju ćemo vidjeti što svaka funkcija radi unutar koda.
 Opendatabase () funkcija
Funkcija opendatabase koristi se za stvaranje baze podataka ili njeno otvaranje ako je već stvorena, potrebna su nam četiri parametra, naziv baze podataka, verzija, naziv baze podataka koja će se vidjeti i veličina u bajtima. Kad stvorimo i otvorimo bazu podataka, ona se sprema u varijablu koju dodjeljujemo u ovom slučaju db.
 funkcija CreartDB () {db = window.openDatabase ("Klijenti", "1.0", "Popis klijenata", 1000000);}
Funkciju možemo pokrenuti i kada pokrenete aplikaciju na Android uređaju
Dok se aplikacija pokreće, pozivamo funkciju koja stvara bazu podataka
 // Dodamo događaj kada je aplikacija pokrenula document.addEventListener ("deviceready", DeviceHome, false); funkcija DeviceHome () {db = window.openDatabase ("Klijenti", "1.0", "Popis klijenata", 1000000); } 
Možda ćemo također morati napraviti domaću zadaću dok se aplikacija pokreće. U prethodnom slučaju vidjeli smo kako pozvati funkciju kada je aplikacija već pokrenuta.
 funkcija Starting () {document.addEventListener ("uređaj već spreman", ConfigureApp (), lažno); } funkcija ConfigureAPP () {document.addEventListener ("nastavi", OtraFuncion (), false); } 
Iz HTML -a s događajem onload, odnosno pri učitavanju stranice pozivamo funkciju Starting, dok pri pokretanju (uređaj već spreman) poziva funkciju ConfigureAPP koja će se izvoditi u pozadini (nastavak).
Neki događaji koje možemo koristiti dostupne na Androidu su:
spreman za uređaj: ovaj događaj se događa kada je aplikacija pokrenuta.
pauza: Ovaj se događaj pokreće kada aplikacija počne raditi u pozadini.
sažima: Do ovog događaja dolazi kada se aplikacija pomakne iz pozadine u prednji plan.
online i offline: Do ovog događaja dolazi kada se aplikacija poveže s mrežom ili se prekine s njom.
Postoje i drugi događaji povezani s interakcijom s telefonom, ali vidjet ćemo one koji su više povezani s kontrolom koda.
 Transaction () funkcija 
Kada želimo izvršiti transakciju tipa SQL, koristimo metodu transakcije. Funkcija se sastoji od tri parametra: funkcije s sql upitom, funkcije koja prikazuje pogrešku ako upit ne uspije i funkcije koja pokazuje je li upit bio uspješan.
Funkcija upita će se provoditi pomoću metode ExecuteSQL. Izradit ćemo tri funkcije za lanac izvođenja pri pokretanju aplikacije, a to su:
konzultirajte DB: s sql upitom
errorCDB (): pokazat će ako postoji pogreška u sql upitu
uspjeh CDB (): prikazat će poruku ako je upit bio uspješan.
 script charset = "utf-8"> // Prilikom pokretanja aplikacije postavljamo neke sql upite document.addEventListener ("deviceready", IniciaSQL, false); funkcija StartSQL () {var db = window.openDatabase ("Kontakti", "1.0", "Popis kontakata", 400000); db.transaction (advisDB, errorCB, successCB); } function queryDB (tx) {// Stvorite tablicu kontakata ako nije stvorena tx.executeSql ('CREATE TABLE IF NOT EXISTS Contacts (id, name, email)'); // Umetnite podatke u tablicu tx.executeSql ('INSERT INTO Contacts (id, name, email) VALUES (1, "José Cordova", "[email protected]")'); tx.executeSql ('INSERT INTO Contacts (id, ime, e -pošta) VRIJEDNOSTI (2, "Maria Alpei", "[email protected]") '); } // funkcija za hvatanje pogreške u transakcijskoj funkciji errorCDB (error) {alert ("Pogreška u SQL upitu:" + error.code); } // Funkcija za prikaz poruke o uspjehu exitCDB () {alert ("Upit uspješan!"); } 
Kako upitati podatke i prikazati ih pomoću sql upita koji vraća niz SQLResultSetList tipa matrice
 funkcija queryDB (tx) {tx.executeSql ('SELECT * FROM Contacts', [], successCDB, errorCDB); } funkcija db uspjeh (tx, rezultati) {// dobivamo broj redaka var totalcontacts = results.rows.length; // pokazujemo broj kontakata console.log ("Ukupno kontakata:" + ukupno kontakata); // Prikazujemo zapise u petlji gdje prikazujemo svako polje niza za (var i = 0; i
Funkcija SQLResultSetList ima svojstvo rows koje sadrži zapise za svaki redak upitane tablice. Ovaj niz se prelazi s funkcijom rows.item (i) i brojem retka. Moramo također naznačiti koje polje tog retka želimo prikazati. Primjer results.rows.item (i) .name.To polje možemo prikazati i u nekom html elementu, poput tekstualnog polja koje se odnosi na njegov identifikator.
 funkcija querySuccess (tx, rezultati) {var len = results.rows.length; document.getElementById ("divshow"). innerHTML + = "
IćiIme

"; za (var i = 0; i" + results.rows.item (i) .n name +""; } } 
Zatim u html kodu moramo imati u ovom slučaju div s identifikatorom divmotrar tako da se prikaže tablica s podacima upita.
Zagrade u funkciji executeSQL koriste se za slanje parametara. Ovo svojstvo nije obavezno jer nećemo uvijek morati slati parametre u SQL upit. Ako želimo poslati parametre u upit, na primjer za ažuriranje podataka iz baze podataka:
 funkcija Update (id, name) {db.transaction (function (tx) {tx.executeSql ("UPDATE Contacts SET SET name" =? WHERE id =? ", [name, id], errorCDB);}); 
Također možemo pristupiti funkcijama s događajima iz html -a poput klika na gumb. Pogledajmo primjer kao da imamo zadanu indeksnu datoteku projekta Apache Cordova, možemo dodati kôd za bazu podataka i html kôd s gumbom Snimi, pri kliku na gumb Snimanje izvršit će se funkcija koja će umetnuti podatke u baza podataka.

Gravirati
Prednosti razvoja s WEB SQL bazom podatakaNije potrebno da programer ili programeri poznaju sve platforme koje se izvode na bilo kojoj platformi ili uređaju. Preglednici, Android, IOS itd., U nekim slučajevima s minimalnim promjenama. Time se štedi mnogo vremena jer čak i grafički dizajneri ili webmasteri mogu raditi, a da nisu nužno programeri, čak se i znanje o Jqueryju koje se primjenjuje na web razvoj u potpunosti koristi u razvoju aplikacija Apache Cordova.
Nedostaci razvoja s WEB SQL bazom podatakaWeb Sql baza podataka koristi dodatak Sqlite kao sredstvo za obradu informacija, a za transakcije podataka s izvornom platformom, koristi JSON, koji koristi različite funkcije i parametre za rukovanje kompleksom podataka.
To je drugačiji projekt od Androida pa uključuje funkcije puno iz izvorne verzije.Je li vam se svidio i pomogao ovaj vodič?Autor možete nagraditi pritiskom na ovaj gumb kako biste mu dali pozitivan bod

Vi ćete pomoći u razvoju web stranice, dijeljenje stranicu sa svojim prijateljima

wave wave wave wave wave