我正在尝试使用WinDev Mobile 21更新现有的SQLite数据库。数据库存储了数据,我不想丢失它。
我已经更新了项目中的分析,为表添加了一个列,现在应用程序无法打开它,因为.db文件的结构与预期的不同。
首先我想使用SQL“ATER TABLE”语句并将新列添加到.db文件中,但我不知道如何。因此,我尝试在打开之前连接到旧数据库,将现有数据复制到临时数据源,删除文件,使用新结构创建新文件并将存储的数据复制到其中。
这是我试过的代码,info函数必须返回记录数但返回0. HOpenConnection()和HExecuteSQLQuery()成功。
ProductesTemp is Data Source
HDescribeConnection("Temp","","","/sdcard/Android/data/com.dbases/ficheret.db/ficheret.db","ficheret",hNativeAccessSQLite,hOReadWrite)
IF HOpenConnection("Temp") THEN
IF HExecuteSQLQuery(ProductesTemp,"Temp",hQueryDefault,"SELECT * FROM Productes") THEN
Info("HRecNum: " + HRecNum(ProductesTemp))
ELSE
Info("HExecuteSQLQuery Error", HErrorInfo(hErrFullDetails))
END
ELSE
Info("HOpenConnection Error", HErrorInfo(hErrFullDetails))
END
答案 0 :(得分:0)
您应该检查HOpenConnection()和HExecuteSQLQuery()是否成功。 如果是,它应该返回true。 否则你应该通过类似的东西获得信息:
.xlsx
它说什么?