sqlite常见问题我要提意见

SQLite模块用于操作本地数据库文件,可实现数据库文件的创建,执行SQL语句等功能。

注意:HBuilderX1.7.2及以上版本支持此功能。

方法:

回调方法:

权限:

5+功能模块(permissions)


{
// ...
"permissions":{
	// ...
	"SQLite": {
		"description": "SQLite数据库"
	}
}
}
			

openDatabase

打开数据库


void plus.sqlite.openDatabase(options);
				

说明:

如果数据库存在则打开,不存在则创建。

参数:

options参数为json类型,包含以下属性:

返回值:

void : 无

示例:


// 打开数据库
function openDB(){
	plus.sqlite.openDatabase({
		name: 'first',
		path: '_doc/test.db',
		success: function(e){
			console.log('openDatabase success!');
		},
		fail: function(e){
			console.log('openDatabase failed: '+JSON.stringify(e));
		}
	});
}
				

uni-app使用plus注意事项

isOpenDatabase

判断数据库是否打开


Boolean plus.sqlite.isOpenDatabase(options);
				

说明:

数据库已经打开则返回true,数据库没有打开则返回false。 HBuilderX1.9.0及以上版本支持。

参数:

options参数为json类型,包含以下属性:

返回值:

Boolean : true表示数据库已打开,false表示数据库没有打开。

closeDatabase

关闭数据库


void plus.sqlite.closeDatabase(options);
				

说明:

完成数据库操作后,必须关闭数据库,否则可能会导致系统资源无法释放。

参数:

options参数为json类型,包含以下属性:

返回值:

void : 无

示例:


// 关闭数据库
function closeDB(){
	plus.sqlite.closeDatabase({
		name: 'first',
		success: function(e){
			console.log('closeDatabase success!');
		},
		fail: function(e){
			console.log('closeDatabase failed: '+JSON.stringify(e));
		}
	});
}
				

uni-app使用plus注意事项

transaction

执行事务


void plus.sqlite.transaction(options);
				

参数:

options参数为json类型,包含以下属性:

返回值:

void : 无

示例:


// 执行事务
function transactionDB(){
	plus.sqlite.transaction({
		name: 'first',
		operation: 'begin',
		success: function(e){
			console.log('transaction success!');
		},
		fail: function(e){
			console.log('transaction failed: '+JSON.stringify(e));
		}
	});
}
				

uni-app使用plus注意事项

executeSql

执行增删改等操作的SQL语句


void plus.sqlite.executeSql(options);
				

参数:

options参数为json类型,包含以下属性:

返回值:

void : 无

示例:


// 执行SQL语句
function executeSQL(){
	plus.sqlite.executeSql({
		name: 'first',
		sql: 'create table if not exists database("where" CHAR(110),"location" CHAR(100),"age" INT(11))',
		success: function(e){
			console.log('executeSql success!');
			plus.sqlite.executeSql({
				name: 'first',
				sql: "insert into database values('北京','安乐林','11')",
				success: function(e){
					console.log('executeSql success!');
				},
				fail: function(e){
					console.log('executeSql failed: '+JSON.stringify(e));
				}
			});
		},
		fail: function(e){
			console.log('executeSql failed: '+JSON.stringify(e));
		}
	});
}
				

uni-app使用plus注意事项

selectSql

执行查询的SQL语句


void plus.sqlite.selectSql(options);
				

参数:

options参数为json类型,包含以下属性:

返回值:

void : 无

示例:


// 查询SQL语句
function selectSQL(){
	plus.sqlite.selectSql({
		name: 'first',
		sql: 'select * from database',
		success: function(data){
			console.log('selectSql success: ');
			for(var i in data){
				console.log(data[i]);
			}
		},
		fail: function(e){
			console.log('selectSql failed: '+JSON.stringify(e));
		}
	});
}
				

uni-app使用plus注意事项

SQLiteSuccessCallback

SQLite操作成功回调函数


void onSuccess(event){
}
				

说明:

不同接口触发的成功回调参数event包含的属性存在差异,具体参考对应的接口描述说明。

参数:

返回值:

void : 无

SQLiteFailCallback

SQLite操作失败回调函数


function void onFail(Exception error){
	// Handle error
	var code = error.code; // 错误编码
	var message = error.message; // 错误描述信息
}
				

参数:

返回值:

void : 无