青草久久影院-青草久久伊人-青草久久久-青草久久精品亚洲综合专区-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);
 });
返回頂部
主站蜘蛛池模板: 强奷乱码欧妇女中文字幕熟女 | 啊轻点啊再深点视频免费 | 亚洲欧美精品一中文字幕 | 久久精品久久久久 | 花蝴蝶在线高清视频观看免费播放 | 国产中文在线观看 | 毛片免费观看视频 | 国产高清在线a视频大全 | 秋霞电影院兔费理论观频84mb | 亚洲 自拍 清纯 综合图区 | 毛片手机在线 | 年轻的女职工在线观看 | 麻豆COMCN| 人妖和美女玩 | 国产又黄又硬又粗 | 7723日本高清完整版在线观看 | 性与肉体电影免费观看 | 女教师二十三岁 | yellow在线中文 | 伊人久久网国产伊人 | 肉蒲团从国内封禁到日本成经典 | 97SE亚洲国产综合自在线不卡 | 在线看片福利无码网址 | 色情内射少妇兽交 | 爆乳啪啪无码成人二区亚洲欧美 | 久久久无码精品无码国产人妻丝瓜 | 嗯啊…跟校草在教室里做h 嗯 用力啊 嗯 c我 啊哈老师 | 1788vv视频 | 十分钟在线观看免费视频高清WWW | 人妖欧美一区二区三区四区 | 伊人伊人影院 | 亚洲欧美精品无码一区二在线 | 第一会所欧美无码原创 | 色欲久久99精品久久久久久AV | 在线中文字幕亚洲日韩 | 日韩av国产av欧美天堂社区 | 秋霞在线观看视频一区二区三区 | 最近的2019中文字幕HD | 精品国产乱码久久久久久口爆 | aaa级黄影片 | 97视频在线免费 |