diff --git a/app/src/main/java/kz/istt/locust/DBGUITable.java b/app/src/main/java/kz/istt/locust/DBGUITable.java index 6d12177..b43187d 100644 --- a/app/src/main/java/kz/istt/locust/DBGUITable.java +++ b/app/src/main/java/kz/istt/locust/DBGUITable.java @@ -10,7 +10,6 @@ import android.util.Log; import android.widget.CheckBox; import android.widget.EditText; import android.widget.Spinner; -import java.sql.SQLException; import com.google.android.material.textfield.TextInputEditText; import java.util.ArrayList; @@ -75,6 +74,8 @@ public class DBGUITable } while (cursor.moveToNext()); } cursor.close(); + }catch(Exception e){ + e.printStackTrace(); }finally{ if(rdb != null) { rdb.close(); } } @@ -121,6 +122,8 @@ public class DBGUITable }while (cursor.moveToNext()); } cursor.close(); + }catch(Exception e){ + e.printStackTrace(); } finally { if (rdb != null) { rdb.close(); } } @@ -303,6 +306,8 @@ public class DBGUITable } } cursor.close(); + }catch(Exception e){ + e.printStackTrace(); }finally{ if(rdb != null) { rdb.close(); } } diff --git a/app/src/main/java/kz/istt/locust/DbOpenHelper.java b/app/src/main/java/kz/istt/locust/DbOpenHelper.java index 92a813c..66bf718 100644 --- a/app/src/main/java/kz/istt/locust/DbOpenHelper.java +++ b/app/src/main/java/kz/istt/locust/DbOpenHelper.java @@ -1588,12 +1588,14 @@ public class DbOpenHelper extends SQLiteOpenHelper } } catch (Exception e) { Log.v(tableName, e.toString(), e); - e.printStackTrace(); + //e.printStackTrace(); } finally { if (c != null) c.close(); } + }catch(Exception e){ + e.printStackTrace(); }finally{ if(rdb != null) { rdb.close(); } } @@ -1603,6 +1605,8 @@ public class DbOpenHelper extends SQLiteOpenHelper /**Функция для обновления или вставки табличных данных*/ public Boolean updateTable(TCTable tbl) { + if(tbl==null) return false; + Cursor cursor; if(tbl.name.equals("countries")) Log.i("igor", "tbl0=" + tbl.name); @@ -1624,88 +1628,102 @@ public class DbOpenHelper extends SQLiteOpenHelper } } - SQLiteDatabase wdb = null; - try { - wdb = this.getWritableDatabase(); - //Переписываем значения существующих полей и выполняем запросы - while(tbl.ReadNextRecord()) + //Переписываем значения существующих полей и выполняем запросы + while(tbl.ReadNextRecord()) + { + if(tbl.name.equals("frmlocustdel")){ + Log.i("igor","tbl.name="+tbl.name); + } + String sql="select 1 from "+tbl.name+" where id = ?"; + String[] par = new String[] { tbl.getRowByName("id").getStrVal() }; + + boolean exists=false; + SQLiteDatabase rdb=null; + try { + rdb = getReadableDatabase(); + cursor = rdb.rawQuery(sql, par); + exists=cursor.moveToFirst(); + cursor.close(); + }catch(Exception e){ + e.printStackTrace(); + }finally{ + if(rdb != null) { rdb.close(); } + } + + ContentValues cv = new ContentValues(); + for(int i=0;i