类别 AIR 订阅所有【AIR】的日志

在AIR中如何避免重复创建SQL数据库

在AIR中,可以直接使用本地SQL数据库。要创建数据库文件,需要首先创建SQLConnection实例。调用其open()方法在同步执行模式下打开它,或者调用其openAsync()方法在异步执行模式下打开它。

在本例中,数据库文件保存当前应用程序目录中,文件名为sample.db

import flash.data.SQLConnection;
import flash.events.SQLErrorEvent;
import flash.events.SQLEvent;
import flash.filesystem.File;
var conn:SQLConnection = new SQLConnection();
conn.addEventListener(SQLEvent.OPEN, openHandler);
conn.addEventListener(SQLErrorEvent.ERROR, errorHandler);
var dbFile:File = File.applicationDirectory.resolvePath("sample.db");
conn.openAsync(dbFile);
function openHandler(event:SQLEvent):void{
	trace("the database was created successfully");
}
function errorHandler(event:SQLErrorEvent):void{
	trace("Error message:", event.error.message);
	trace("Details:", event.error.details);
}

注意这里有一个问题:每次调用open()方法或openAsync()方法都会新建数据库文件。要避免重复创建,只需调用方法前先判断数据库文件是否存在。

if(dbFile.exists){
	trace("the database existed");
}
else{
	conn.openAsync(dbFile);
}
上一篇上一篇: PureMVC升级到1.7
下一篇下一篇: 数组冒泡排序
来自文章来自: 本站原创
引用引用通告: 查看所有引用 | 我要引用此文章
标签Tags: Apollo Database
相关相关日志:
评论: 1 | 引用: 0 | 查看次数: -
引用agedwine[2008-01-07 10:39 AM | 无网站 | 无Mail | 219.142.248.254 | 删除 | 取消审核 | 回复回复]
[正在加载评论信息,请稍候...]
发表评论
昵 称:
密 码: 游客发言不需要密码.
邮 箱: 邮件地址支持Gravatar头像,邮箱地址不会公开.
网 址: 输入网址便于回访.
内 容:
验证码:
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.
字数限制 1000 字 | UBB代码 开启 | [img]标签 关闭