O que faz com que um arquivo de diário seja criado no SQLit
Comecei a perceber um comportamento estranho com minhas consultas SQLite para meu aplicativo para iPhone. Sempre que executo uma instrução "INSERT", um arquivo de diário é criado ao lado do meu arquivo db (o nome do arquivo exato é "userdata.db-journal").
Se eu entendo os documentos corretamente, esse arquivo de diário é usado pelo SQLite para poder reverter caso a operação falhe. Mas o arquivo permanece lá após a conclusão da operação.
Eu faço as etapas clássicas para preparar, encadernar e executar a consulta (nenhuma verificação de valores de retorno para simplificar):
sqlite3 *db = NULL;
sqlite3_open( "userdata.db", &db );
sqlite3_stmt *insertStmt = NULL;
const char *query = "INSERT INTO table VALUES(?,?)";
sqlite3_prepare_v2( db, query, -1, &insertStmt, NULL );
sqlite3_bind_int( insertStmt, 1, 0 );
sqlite3_bind_int( insertStmt, 2, 0 );
sqlite3_step( insertStmt );
sqlite3_reset( insertStmt );
sqlite3_clear_bindings( insertStmt );
sqlite3_close( db );
O arquivo de diário é criado depois que a função 'sqlite3_step' é chamada e permanece lá até eu fechar o banco de dados. O que preciso fazer para que isso desapareça?