Database - об'єкт для роботи з Web SQL.
db = window.openDatabase(name, version, displayName, maxSize, creationCallback );
db - зміна яка отримує об'єкт Database.
window - не обов'язково вказувати. Об'єкт window.
name - рядок з назвою бази даних.
version - рядок який містить версію Web SQL Api.
displayName - рядок який містить опис бази даних.
maxSize - максимальний розмір бази даних в байтах.
creationCallback - не обов'язково вказувати. Функція яка визивається якщо бази даних name немає.
Database об'єкт для роботи з базою даних Web SQL.
Об'єкт Database повертає метод openDatabase.
В якості БД браузери використовують SQLite, тому запити до бази даних повині мати синтаксис SQLite.
Не всі браузери підтримують Web SQL Database API.
Не являється стандартом, тому деякі методи і властивості можуть по різному працювати у браузерах.
if(window.openDatabase){
var db = openDatabase("test2","","test db", 2097152);
alert(db);
}
else alert('Ваш браузер НЕ підтримує openDatabase.');
if(window.openDatabase){
var db = openDatabase("mydb","","test db", 2097152);
db.transaction(function(tx){
tx.executeSql('CREATE TABLE IF NOT EXISTS test(`id` INTEGER PRIMARY KEY, `name`, `text`);');
tx.executeSql('INSERT INTO `test` (`name`, `text`) VALUES ("Приклад Web SQL Database","дата : '+Date()+'");');
tx.executeSql('SELECT * FROM `test`;',[],function(tx, res){
var s='<tr><th>id</th><th>name</th><th>text</th></tr>';
for(i=0;i<res.rows.length;i++)
s+='<tr><td>'+res.rows.item(i).id+'</td><td>'+res.rows.item(i).name+'</td><td>'+res.rows.item(i).text+'</td></tr>';
document.getElementById('test').innerHTML='<table border="1">'+s+'</table>';});
});
}
else alert('Ваш браузер НЕ підтримує openDatabase.');
Приклад додавання даних у таблицю БД Web SQL:
if(window.openDatabase){
var db = openDatabase("mydb","","test db", 2097152);
db.transaction(function(tx){
tx.executeSql('CREATE TABLE IF NOT EXISTS test(`id` INTEGER PRIMARY KEY, `name`, `text`);');
tx.executeSql('INSERT INTO test (name, text) VALUES("item()"," приклад додавання даних у таблицю. '+Date()+'");', [],function(t, r){alert('Дані успішно додані у БД.\nid рядка:'+r.insertId);});
},function(er){alert('Виникла помилка: '+e.message)} );
}
else alert('Ваш браузер НЕ підтримує openDatabase.');
Приклад зміни даних у БД Web SQL:
if(window.openDatabase){
var db = openDatabase("mydb","","test db", 2097152);
db.transaction(function(tx){
tx.executeSql('CREATE TABLE IF NOT EXISTS test(`id` INTEGER PRIMARY KEY, `name`, `text`);');
tx.executeSql('UPDATE `test` SET `name`="змінено!", `text`="приклад зміни даних. '+Date()+'" WHERE `id`<3;',null, function(tr,res){
alert('Дані усмішно змінено у БД. \nбуло зміноне рядків: '+res.rowsAffected);
});
});
}
else alert('Ваш браузер НЕ підтримує openDatabase.');
Приклад видалення даних з таблиці у Web SQL:
if(window.openDatabase){
var db = openDatabase("mydb","","test db", 2097152);
//створюємо таблицю test якщо її немає
db.transaction(function(tx){
tx.executeSql('CREATE TABLE IF NOT EXISTS test(`id` INTEGER PRIMARY KEY, `name`, `text`);');});
db.transaction(function(tx){
tx.executeSql('DELETE FROM test WHERE id = 3;',null, function(tr,res){
alert('Видалено записів: '+res.rowsAffected);
});
}, function(er){alert(er.message);});
}
else alert('Ваш браузер НЕ підтримує openDatabase.');