我想在添加新表之前删除表中的所有整体并将 PrimaryKey 重置回 1。
这是我的实体
@PrimaryKey(autoGenerate = true)
private int id;
private int weatherId;
private String highTemp;
private String lowTemp;
Run Code Online (Sandbox Code Playgroud)
所以我用了
if(weatherEntries != null && weatherEntries.size() != 0){
Log.d(TAG, "WeatherEntry List is not empty");
mDb.clearAllTables();
for(int i = 0; i < weatherEntries.size(); i++) {
mDb.weatherDao().insertWeather(weatherEntries.get(i));
Log.d(TAG, "Inserting Weather Data into the Database");
}
}
Run Code Online (Sandbox Code Playgroud)
当添加新条目时,它们的主键不是从 1 开始。所以,我厌倦了查询
@Query("ALTER TABLE SequenceAction AUTO_INCREMENT = 0")
void clearPrimaryKey();
Run Code Online (Sandbox Code Playgroud)
我收到错误
“错误:输入‘SequenceAction AUTO_INCRMENT’处没有变量替代”
我试图在谷歌上查找如何解决这个问题,甚至查看了 Room 的 Android 文档以了解如何重置主键,但没有找到任何内容。
任何帮助将不胜感激。