Database

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.');