Contiene métodos que permiten al usuario manipular la base de datos.
Un objeto Database
es retornado de la llamada window.openDatabase()
.
function populateDB(tx) { tx.executeSql('DROP TABLE IF EXISTS DEMO'); tx.executeSql('CREATE TABLE IF NOT EXISTS DEMO (id unique, data)'); tx.executeSql('INSERT INTO DEMO (id, data) VALUES (1, "Primera fila")'); tx.executeSql('INSERT INTO DEMO (id, data) VALUES (2, "Segunda fila")'); } function errorCB(err) { alert("Error procesando SQL: "+err.code); } function successCB() { alert("Correcto!"); } var db = window.openDatabase("Database", "1.0", "Demo PhoneGap", 200000); db.transaction(populateDB, errorCB, successCB);
var db = window.openDatabase("Database", "1.0", "Demo PhoneGap", 200000); db.changeVersion("1.0", "1.1");
<!DOCTYPE html> <html> <head> <title>Ejemplo de Storage</title> <script type="text/javascript" charset="utf-8" src="phonegap.js"></script> <script type="text/javascript" charset="utf-8"> // Espera a que PhoneGap se inicie // document.addEventListener("deviceready", onDeviceReady, false); // PhoneGap esta listo // function onDeviceReady() { var db = window.openDatabase("Database", "1.0", "Demo PhoneGap", 200000); db.transaction(populateDB, errorCB, successCB); } // Rellena la base de datos // function populateDB(tx) { tx.executeSql('DROP TABLE IF EXISTS DEMO'); tx.executeSql('CREATE TABLE IF NOT EXISTS DEMO (id unique, data)'); tx.executeSql('INSERT INTO DEMO (id, data) VALUES (1, "Primera fila")'); tx.executeSql('INSERT INTO DEMO (id, data) VALUES (2, "Segunda fila")'); } // Función 'callback' de error de transacción // function errorCB(tx, err) { alert("Error procesando SQL: "+err); } // Función 'callback' de transacción satisfactoria // function successCB() { alert("bien!"); } </script> </head> <body> <h1>Ejemplo</h1> <p>Base de datos</p> </body> </html>