下面分別介紹本地?cái)?shù)據(jù)庫(kù)的各個(gè)API及其使用方法。
1、利用openDatabase創(chuàng)建數(shù)據(jù)庫(kù)
我們可以利用openDatabase方法創(chuàng)建數(shù)據(jù)庫(kù)。openDatabase方法傳遞五個(gè)參數(shù),分別是:數(shù)據(jù)庫(kù)名、數(shù)據(jù)庫(kù)版本號(hào)(可省略)、對(duì)數(shù)據(jù)庫(kù)的描述、設(shè)置分配的數(shù)據(jù)庫(kù)的大小、回調(diào)函數(shù)。
如果我們要?jiǎng)?chuàng)建一個(gè)本地?cái)?shù)據(jù)庫(kù),可以執(zhí)行如下代碼:
var myWebDatabase = openDatabase(“user”, ”1.0”, “user info”, 1024*1024, function(){});
這樣就創(chuàng)建了一個(gè)用戶信息表。之后可以對(duì)創(chuàng)建的本地?cái)?shù)據(jù)庫(kù)是否成功進(jìn)行驗(yàn)證:
SQL Code復(fù)制內(nèi)容到剪貼板
- if(!dataBase){
- alert(“The database has been created successfully!”);
- }else{
- alert(“The database has not been successfully created.”)
- }if(!dataBase){
- alert(“The database has been created successfully!”);
- }else{
- alert(“The database has not been successfully created.”)
- }
-
2、利用executeSql方法執(zhí)行sql語(yǔ)句
使用executeSql方法,我們可以直接執(zhí)行正常的sql語(yǔ)句,如下:
context.executeSql(‘INSERT INTO testTable(id,name) VALUES (1,”Martin”)’);
當(dāng)然,這里只體現(xiàn)了executeSql的功能,并沒(méi)有確切說(shuō)明executeSql方法怎么用,用在哪里。要想使用該方法就必須介紹transaction。
3、利用transaction處理事務(wù)
該方法用來(lái)處理事務(wù),可以傳遞三個(gè)參數(shù):包含事務(wù)內(nèi)容的一個(gè)方法、執(zhí)行成功的回調(diào)函數(shù)、執(zhí)行失敗的回調(diào)函數(shù)(后兩者可以省略)。
結(jié)合transaction和executeSql,我們就可在我們之前創(chuàng)建的數(shù)據(jù)庫(kù)中添加創(chuàng)建數(shù)據(jù)表并添加數(shù)據(jù)了,代碼如下:
JavaScript Code復(fù)制內(nèi)容到剪貼板
- myWebDatabase.transaction(function (context) {
- context.executeSql('CREATE TABLE IF NOT EXISTS testTable (id unique, name)');
- context.executeSql('INSERT INTO testTable (id, name) VALUES (0, "Byron")');
- context.executeSql('INSERT INTO testTable (id, name) VALUES (1, "Casper")');
- context.executeSql('INSERT INTO testTable (id, name) VALUES (2, "Frank")');
- });
-
sql語(yǔ)句的含義不多解釋,但從這里已經(jīng)可以很明白的看出如何在本地?cái)?shù)據(jù)庫(kù)中,想在一般數(shù)據(jù)庫(kù)中一樣創(chuàng)建數(shù)據(jù)庫(kù)數(shù)據(jù)表并添加數(shù)據(jù)了。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助。
本文鏈接:http://blog.csdn.net/fareise/article/details/50786594