Попробовала этот код.math64 писал(а):Ошибки в коде. И лучше использовать транзакции - без транзакций вставка идёт медленно.Код: Выделить всё
private void insert() { ArrayList<MyClass> list = new ArrayList<MyClass>(); list.add(new MyClass(5, "hello")); list.add(new MyClass(5, "world")); DBHelper dbHelper = new DBHelper(this); SQLiteDatabase db = dbHelper.getWritableDatabase(); db.beginTransaction(); try { try { ContentValues cv = new ContentValues(); for(int i = 0; i < list.size(); i++) { cv.put("x", list.get(i).getX()); cv.put("word", list.get(i).getWord()); long rowID = db.insert("matable", null, cv); if(rowID == -1) throw new Exception("error in insert to database"); } } catch(Exception) { dbHelper.close(); } <==== db.setTransactionSuccessful(); } finally { db.endTransaction(); } db.close(); dbHelper.close(); }
Указывает на ошибку в ====> этом месте
Текст
Подскажите, что это означает.Syntax error on token "Exception", VariableDeclaratorId expected after this token
У меня отлавливание ошибок - слабое место. Подскажите, пожалуйста, статейку на русском языке, чтоб для дураков объяснялось блоки try-finally и иже с ними.
Только не в общем, а именно с базами - что конкретно нужно писать в этих блоках.