Flex 数据库被覆盖
Flex database getting overwritten
我正在维护一个使用 SQLite3 数据库的现有 Flex 桌面应用程序。我对 Flex 编程很陌生。
数据库最初有一些测试值,我通过删除现有 table 导入具有相同 table 名称的新数据来更改这些值。
现在,一旦我 运行 应用程序,我仍然看到旧数据,并且在检查数据库时 table 发现测试值回到那里,新值消失了。
我检查了任何插入或导入语句的代码,但找不到一个。有没有人遇到过类似的问题?是不是因为数据库缓存,如果是那么如何清除这个缓存?关于这个奇怪问题背后的原因的任何提示?
Flex 创建一个位置以在计算机本地保存数据。在我的机器中,路径在我的用户名 AppData\Roaming\ProjectName\Local Store\Database\dbname.db
下
我负责的代码如下(第 9 行,dbWorkFile 变量):
public function SQLCon(strQuery:String):SQLResult
{
try
{
var dbStatement:SQLStatement = new SQLStatement();
var dbFile:File = File.applicationDirectory.resolvePath("DataBase/question.db"); //file in the compiled folder
var dbWorkFile:File = File.applicationStorageDirectory.resolvePath("DataBase/question.db");//Location of roaming database
if(!dbWorkFile.exists){
dbFile.copyTo(dbWorkFile);
}
conn = new SQLConnection();
conn.open(dbWorkFile);
....
留下这个答案是为了让面临类似幽灵问题的人受益:)
我正在维护一个使用 SQLite3 数据库的现有 Flex 桌面应用程序。我对 Flex 编程很陌生。 数据库最初有一些测试值,我通过删除现有 table 导入具有相同 table 名称的新数据来更改这些值。 现在,一旦我 运行 应用程序,我仍然看到旧数据,并且在检查数据库时 table 发现测试值回到那里,新值消失了。 我检查了任何插入或导入语句的代码,但找不到一个。有没有人遇到过类似的问题?是不是因为数据库缓存,如果是那么如何清除这个缓存?关于这个奇怪问题背后的原因的任何提示?
Flex 创建一个位置以在计算机本地保存数据。在我的机器中,路径在我的用户名 AppData\Roaming\ProjectName\Local Store\Database\dbname.db
下我负责的代码如下(第 9 行,dbWorkFile 变量):
public function SQLCon(strQuery:String):SQLResult
{
try
{
var dbStatement:SQLStatement = new SQLStatement();
var dbFile:File = File.applicationDirectory.resolvePath("DataBase/question.db"); //file in the compiled folder
var dbWorkFile:File = File.applicationStorageDirectory.resolvePath("DataBase/question.db");//Location of roaming database
if(!dbWorkFile.exists){
dbFile.copyTo(dbWorkFile);
}
conn = new SQLConnection();
conn.open(dbWorkFile);
....
留下这个答案是为了让面临类似幽灵问题的人受益:)