我在Play商店发布了一个应用程序。
该应用程序使用一个数据库,该数据库包含一个具有int类型列的表。
我正在做一个新的更改,我需要将列类型更改为long。
如何在我创建的DatabaseHandler中处理它。
我想保留存储在较旧的应用数据库中的数据,那么理想情况下应该是onUpgrade()函数中的代码???
答案 0 :(得分:3)
您无需更改数据库列类型。 INTEGER
列将很乐意包含表示Java long
所需的所有位。
答案 1 :(得分:1)
我认为使用SQLite,最好的方法是创建一个临时表,复制所有表内容,删除旧表并在列上重新创建具有正确类型的表,然后您可以只复制临时表中的内容表并放下它......
我知道这不是最好的方法,但我不认为SQLite有一些alter table功能。
答案 2 :(得分:0)
据我所知,你不能这样做。但是你可以放下你的桌子,如果它存在并再次创建它。也许您可以在SQLite Modify Column或Modify a Column's Type in sqlite3
找到一些有用的信息