エラーメッセージをsqlite3_free()してないからでしょう
res = sqlite3_exec(database, [sqlQueryStr UTF8String], NULL, NULL, &errorMsg);
if (res != SQLITE_OK)
{
sqlite3_free(errorMsg); // <-これ
sqlite3_close(database);
NSLog(@"executeQuery Error: %@", errorMsg);
database = NULL;
return res;
}
ネタ元