青草久久影院-青草久久伊人-青草久久久-青草久久精品亚洲综合专区-SM双性精跪趴灌憋尿调教H-SM脚奴调教丨踩踏贱奴

17站長網

17站長網 首頁 編程教程 Html5教程 查看內容

HTML5 Web SQL 數據庫

Web sql 數據庫 API 并不是 html5 規范的一部分,它是一個獨立的規范,引入了一組使用 sql 操作客戶端數據庫的 APIs

Web sql 核心方法

下表列出了在 Web sql 規范中定義的三個核心方法

方法描述
openDatabase使用現有的數據庫或者新建的數據庫創建一個數據庫對象
transaction讓我們能夠控制一個事務,以及基于這種情況執行提交或者回滾
executesql用于執行實際的 sql 查詢


打開數據庫

方法 openDatabase() 用來打開一個數據庫

如果數據庫不存在,則會創建一個新的數據庫

使用方法

var db = openDatabase('ysdb','1.0','My first DB',2 * 1024 * 1024,function(){});

參數說明

參數說明
'ysDB'數據庫名稱
'1.0'版本號
'My first DB '描述文本
'2 * 1024 * 1024'數據庫大小
func創建回調,回調函數會在創建數據庫后被調用


執行查詢操作

方法 database.transaction() 用來執行一個事物查詢操作

var db = openDatabase('ysdb',2 * 1024 * 1024);
db.transaction(function (tx) {  
   tx.executesql('CREATE TABLE IF NOT EXISTS logs (id unique,log)');
});

上面的范例執行后會在 'ysdb' 數據庫中創建一個名為 logs 的表

插入數據

創建了數據庫后,我們可以使用下面的語句插入一些數據

var db = openDatabase('ysdb',2 * 1024 * 1024);
db.transaction(function (tx) {
   tx.executesql('CREATE TABLE IF NOT EXISTS logs (id unique,log)');
   tx.executesql('INSERT INTO logs (id,log) VALUES (1,"簡單編程")');
   tx.executesql('INSERT INTO logs (id,log) VALUES (2,"www.F2er.com")');
});

我們也可以使用動態值來插入數據

var db = openDatabase('ysdb',2 * 1024 * 1024);
db.transaction(function (tx) {  
  tx.executesql('CREATE TABLE IF NOT EXISTS logs (id unique,log)');
  tx.executesql('INSERT INTO logs (id,log) VALUES (?,?)',[e_id,e_log]);
});

范例中的 e_id 和 e_log 是外部變量,executesql 會映射數組參數中的每個條目給 "?"

讀取數據

我們可以使用下面的語句從讀取數據庫中已經存在的數據

var db = openDatabase('ysdb',2 * 1024 * 1024);
 
db.transaction(function (tx) {
   tx.executesql('CREATE TABLE IF NOT EXISTS logs (id unique,"www.F2er.com")');
});
 
db.transaction(function (tx) {
   tx.executesql('SELECT * FROM logs',[],function (tx,results) {
      var len = results.rows.length,i;
      msg = "<p>查詢記錄條數: " + len + "</p>";
      document.querySelector('#status').innerhtml +=  msg;
 
      for (i = 0; i < len; i++){
         alert(results.rows.item(i).log );
      }
 
   },null);
});

完整的范例

var db = openDatabase('ysdb',2 * 1024 * 1024);
var msg;
 
db.transaction(function (tx) {
    tx.executesql('CREATE TABLE IF NOT EXISTS logs (id unique,log)');
    tx.executesql('INSERT INTO logs (id,"簡單編程")');
    tx.executesql('INSERT INTO logs (id,"www.F2er.com")');
    msg = '<p>數據表已創建,且插入了兩條數據</p>';
    document.querySelector('#status').innerHTML =  msg;
});
 
db.transaction(function (tx) {
tx.executesql('SELECT * FROM logs',results) {
    var len = results.rows.length,i;
    msg = "<p>查詢記錄條數: " + len + "</p>";
    document.querySelector('#status').innerHTML +=  msg;
 
    for (i = 0; i < len; i++){
        msg = "<p><b>" + results.rows.item(i).log + "</b></p>";
        document.querySelector('#status').innerHTML +=  msg;
    }
},null);
});

刪除記錄

我們可以使用下面的語句來刪除記錄

db.transaction(function (tx) {
    tx.executesql('DELETE FROM logs  WHERE id=1');
});

刪除指定的數據 id 也可以是動態的

db.transaction(function(tx) {
    tx.executesql('DELETE FROM logs WHERE id=?',[id]);
});

更新記錄

我們可以使用下面的語句來更新記錄

db.transaction(function (tx) {
    tx.executesql('UPDATE logs SET log=\'F2er.com\' WHERE id=2');
});

更新指定的數據 id 也可以是動態的

db.transaction(function(tx) {
    tx.executesql('UPDATE logs SET log=\'F2er.com\' WHERE id=?',[id]);
});

完整范例

var db = openDatabase('ysdb',2 * 1024 * 1024);
var msg;
 
 db.transaction(function (tx) {
    tx.executesql('CREATE TABLE IF NOT EXISTS logs (id unique,"www.F2er.com")');
    msg = '<p>數據表已創建,且插入了兩條數據。</p>';
    document.querySelector('#status').innerHTML =  msg;
 });
 
 db.transaction(function (tx) {
      tx.executesql('DELETE FROM logs  WHERE id=1');
      msg = '<p>刪除 id 為 1 的記錄。</p>';
      document.querySelector('#status').innerHTML =  msg;
 });
 
 db.transaction(function (tx) {
     tx.executesql('UPDATE logs SET log=\'F2er.com\' WHERE id=2');
      msg = '<p>更新 id 為 2 的記錄。</p>';
      document.querySelector('#status').innerHTML =  msg;
 });
 
 db.transaction(function (tx) {
    tx.executesql('SELECT * FROM logs',results) {
       var len = results.rows.length,i;
       msg = "<p>查詢記錄條數: " + len + "</p>";
       document.querySelector('#status').innerHTML +=  msg;
 
       for (i = 0; i < len; i++){
          msg = "<p><b>" + results.rows.item(i).log + "</b></p>";
          document.querySelector('#status').innerHTML +=  msg;
       }
    },null);
 });
返回頂部
主站蜘蛛池模板: 国外经典三级 | 国产综合在线视频 | 男人扒开添女人下部口述 | 最近中文字幕mv手机免费高清 | 一本久道视频无线视频 | 男人到天堂a线牛叉在线 | 亚洲高清有码中文字 | 天天躁躁水汪汪人碰人 | 亚洲 欧美 中文 日韩 视频 | 国自精品三七区 | 美女夫妻内射潮视频 | 成人国产三级在线播放 | h片下载地址 | 欧美白人战黑吊 | 日本艳妓BBW高潮一19 | 久久人妻少妇嫩草AV蜜桃35I | 亚洲人成网站在线观看90影院 | 三级黄色片免费观看 | 岛国大片在线观看免费版 | 亚洲精品天堂自在久久77 | 毛片内射久久久一区 | 亚洲视频中文字幕在线 | 神马影院午夜理论二 | 国产高清免费视频免费观看 | 免费精品美女久久久久久久久 | 国产在线视精品在亚洲 | 性色欲情网站IWWW九文堂 | 喜马拉雅听书免费版 | 伊人久久青草青青综合 | 国产精品嫩草影院 | 欧美激情视频在线观看一区二区三区 | 99人精品福利在线观看 | 91免费永久在线地址 | 极品 女神校花 露脸91 | 区一区二视频免费观看 | 久操久操久操 | 成人精品在线视频 | 姑娘视频日本在线播放 | 午夜精品久久久久久影视riav | 亚洲欧美中文在线一区 | 日韩精品亚洲专区在线影院 |