На самом деле другой способ, которым я это сделал, - это DROP
таблицы, а затем просто вызвать метод onCreate
для SQLiteDatabase
. Я не знаю, какой из них наиболее эффективен Delete
или Drop
, потому что я не особо задумывался о том, насколько эффективен каждый метод, но он прекрасно работает для меня, потому что в моей исходной базе данных у меня установлены некоторые значения по умолчанию, и поэтому когда я вызываю метод onCreate
для базы данных, у меня там также есть некоторые методы PUT
. Это сохраняет репликацию кода. (вместо того, чтобы выполнять удаление, а затем путы, я получаю многоцелевое назначение из моей функции onCreate
).
Я называю это reset
. Так что вам просто нужно сделать db.reset()
, а затем значения по умолчанию будут добавлены в onCreate
после того, как вы создадите свои таблицы.
public void reset () throws SQLException {
db = DBHelper.getWritableDatabase ();
db.execSQL ("drop table "+TABLE_NAME);
db.close ();
this.DBHelper.onCreate (this.db);
}
Есть ли какие-нибудь даты ваших файлов в будущем? Это может произойти, если вы изменили часовые пояса или изменили время системных часов. Даты в будущем запутают IDE и заставят перестраивать каждый раз, когда нажимают F7 или F5.
Скорее всего, дело в зависимостях.
Рассмотрите следующие возможности:
Если у вас есть специальные инструменты сборки, определенные для некоторых файлов в вашем решении, убедитесь, что вывод свойство содержит правильные имена файлов. Если выходные данные инструмента сборки не соответствуют тем, которые указаны в именах выходных файлов, построитель перестроит этот файл.
Если у вас есть настраиваемые события сборки, проверьте, не отображаются ли выходные данные этих событий сборки не влияет на зависимости файлов, которые будут построены.
У меня возникли проблемы при попытке, после сборки, скопировать или переместить некоторые выходные файлы в папку сборки. Операции после сборки, которые влияют на временную метку файлов вывода процесса сборки, будут определять повторную сборку каждый раз.
У меня та же проблема, и, похоже, это связано с тем, что я отключил просмотр информации. Свойства-> C / C ++ -> Обзор информации-> Включить обзор информации-> Нет. Единственное исправление, которое я нашел, - снова включить его. Это для проекта xbox 360, fwiw, другие мои проекты не имеют проблем.
Кажется, что эта проблема может быть вызвана многими причинами, но для меня она была исправлена:
bin
и obj
папок (Clean, похоже, не помогает) Примечание. Это было для программы C # в Visual Studio 2010.
Подобные симптомы у меня вызвали: У меня в решении несколько проектов. Были файлы .cpp, на которые ссылались (и, следовательно, были скомпилированы) более 1 проекта. К сожалению, Visual Studio создает.obj файлы с очень простым именем - он просто заменяет ".cpp" на ".obj". Создание оболочки .cpp-s с разными именами решило проблему.