[RESOLVED]SQLite UPDATE is deleting my records

Problems with WiFi, SQLite ,Bluetooth, WiMax, Proxies, etc...

[RESOLVED]SQLite UPDATE is deleting my records

Postby dbergum » Thu Oct 22, 2009 9:59 pm

So I'm coding a settings page for my app and i want to save the current settings but instead of creating a new row each time i want to update the same row. However it is instead, deleting my record. I'm using an active record model and have no clue why this is happening.

Syntax: [ Download ] [ Hide ]
Using java Syntax Highlighting
  1.  
  2. public class Settings implements ActiveRecord {
  3.  
  4.  
  5.  
  6.         // writable members
  7.  
  8.         private int checkInterval;
  9.  
  10.         private boolean checkOnMonday;
  11.  
  12.         private boolean checkOnTuesday;
  13.  
  14.         private boolean checkOnWednesday;
  15.  
  16.         private boolean checkOnThursday;
  17.  
  18.         private boolean checkOnFriday;
  19.  
  20.         private boolean checkOnSaturday;
  21.  
  22.         private boolean checkOnSunday;
  23.  
  24.         private Date checkStartTime;
  25.  
  26.         private Date checkEndTime;
  27.  
  28.         private int accuracy;
  29.  
  30.         private String type;
  31.  
  32.         private int turnOffUnderPercentage;
  33.  
  34.         private SQLiteDatabase sqliteDatabase;
  35.  
  36.  
  37.  
  38.         // constants
  39.  
  40.         public static final String COL_TYPE = "type";
  41.  
  42.         public static final String COL_CHECK_INTERVAL = "check_interval";
  43.  
  44.         public static final String COL_ACCURACY = "accuracy";
  45.  
  46.         public static final String COL_CHECK_START_TIME = "check_start_time";
  47.  
  48.         public static final String COL_CHECK_END_TIME = "check_end_time";
  49.  
  50.         public static final String COL_CHECK_MONDAY = "check_monday";
  51.  
  52.         public static final String COL_CHECK_TUESDAY = "check_tuesday";
  53.  
  54.         public static final String COL_CHECK_WEDNESDAY = "check_wednesday";
  55.  
  56.         public static final String COL_CHECK_THURSDAY = "check_thursday";
  57.  
  58.         public static final String COL_CHECK_FRIDAY = "check_friday";
  59.  
  60.         public static final String COL_CHECK_SATURDAY = "check_saturday";
  61.  
  62.         public static final String COL_CHECK_SUNDAY = "check_sunday";
  63.  
  64.         public static final String COL_TURN_OFF_UNDER_PERCENTAGE = "turn_off_under_percentage";
  65.  
  66.         public static final String SQL_TABLE_NAME = "settings";
  67.  
  68.         public static final String PRESET_TYPE_HIGH_BATTERY_LIFE = "High Battery Life";
  69.  
  70.         public static final String PRESET_TYPE_HIGH_PERFORMANCE = "High Performance";
  71.  
  72.         public static final String PRESET_TYPE_CURRENT = "Current";
  73.  
  74.         public static final String SQL_CREATE_TABLE = "CREATE TABLE "
  75.  
  76.                         + SQL_TABLE_NAME
  77.  
  78.                         + " "
  79.  
  80.                         + "(type text primary key, check_interval integer not null, "
  81.  
  82.                         + "accuracy integer not null, check_start_time text not null, "
  83.  
  84.                         + "check_end_time text not null, check_monday integer not null, "
  85.  
  86.                         + "check_tuesday integer not null, check_wednesday integer not null, "
  87.  
  88.                         + "check_thursday integer not null, check_friday integer not null, "
  89.  
  90.                         + "check_saturday integer not null, check_sunday integer not null, "
  91.  
  92.                         + "turn_off_under_percentage integer not null); ";
  93.  
  94.         public static final String SQL_INSERT_PRESET_HBL = "INSERT INTO \""
  95.  
  96.                         + SQL_TABLE_NAME + "\" VALUES( 'High Battery Life',"
  97.  
  98.                         + " 30, 50, '06:00:00', '18:00:00', 1, 1, 1, 1, 1, 0, 0, 30);";
  99.  
  100.         public static final String SQL_INSERT_PRESET_HP = "INSERT INTO \""
  101.  
  102.                         + SQL_TABLE_NAME + "\" VALUES( 'High Performance',"
  103.  
  104.                         + " 5, 10, '00:00:00', '23:00:00', 1, 1, 1, 1, 1, 1, 1, 10);";
  105.  
  106.         public static final String SQL_INSERT_PRESET_C = "INSERT INTO \""
  107.  
  108.                 + SQL_TABLE_NAME + "\" VALUES( 'Current',"
  109.  
  110.                 + " 15, 25, '04:00:00', '21:00:00', 1, 1, 1, 1, 1, 0, 0, 20);";
  111.  
  112.  
  113.  
  114.         // accessors
  115.  
  116.         public int getCheckInterval() {
  117.  
  118.                 return checkInterval;
  119.  
  120.         }
  121.  
  122.  
  123.  
  124.         public void setCheckInterval(int checkInterval) {
  125.  
  126.                 this.checkInterval = checkInterval;
  127.  
  128.         }
  129.  
  130.  
  131.  
  132.         public int getAccuracy() {
  133.  
  134.                 return accuracy;
  135.  
  136.         }
  137.  
  138.  
  139.  
  140.         public void setAccuracy(int accuracy) {
  141.  
  142.                 this.accuracy = accuracy;
  143.  
  144.         }
  145.  
  146.  
  147.  
  148.         public Date getCheckStartTime() {
  149.  
  150.                 return checkStartTime;
  151.  
  152.         }
  153.  
  154.  
  155.  
  156.         public void setCheckStartTime(Date checkStartTime) {
  157.  
  158.                 this.checkStartTime = checkStartTime;
  159.  
  160.         }
  161.  
  162.  
  163.  
  164.         public Date getCheckEndTime() {
  165.  
  166.                 return checkEndTime;
  167.  
  168.         }
  169.  
  170.  
  171.  
  172.         public void setCheckEndTime(Date checkEndTime) {
  173.  
  174.                 this.checkEndTime = checkEndTime;
  175.  
  176.         }
  177.  
  178.  
  179.  
  180.         public String getType() {
  181.  
  182.                 return type;
  183.  
  184.         }
  185.  
  186.  
  187.  
  188.         public void setType(String type) {
  189.  
  190.                 this.type = type;
  191.  
  192.         }
  193.  
  194.  
  195.  
  196.         public int getTurnOffUnderPercentage() {
  197.  
  198.                 return turnOffUnderPercentage;
  199.  
  200.         }
  201.  
  202.  
  203.  
  204.         public void setTurnOffUnderPercentage(int turnOffUnderPercentage) {
  205.  
  206.                 this.turnOffUnderPercentage = turnOffUnderPercentage;
  207.  
  208.         }
  209.  
  210.  
  211.  
  212.         public boolean getCheckOnMonday() {
  213.  
  214.                 return checkOnMonday;
  215.  
  216.         }
  217.  
  218.  
  219.  
  220.         public void setCheckOnMonday(boolean checkOnMonday) {
  221.  
  222.                 this.checkOnMonday = checkOnMonday;
  223.  
  224.         }
  225.  
  226.  
  227.  
  228.         public boolean getCheckOnTuesday() {
  229.  
  230.                 return checkOnTuesday;
  231.  
  232.         }
  233.  
  234.  
  235.  
  236.         public void setCheckOnTuesday(boolean checkOnTuesday) {
  237.  
  238.                 this.checkOnTuesday = checkOnTuesday;
  239.  
  240.         }
  241.  
  242.  
  243.  
  244.         public boolean getCheckOnWednesday() {
  245.  
  246.                 return checkOnWednesday;
  247.  
  248.         }
  249.  
  250.  
  251.  
  252.         public void setCheckOnWednesday(boolean checkOnWednesday) {
  253.  
  254.                 this.checkOnWednesday = checkOnWednesday;
  255.  
  256.         }
  257.  
  258.  
  259.  
  260.         public boolean getCheckOnThursday() {
  261.  
  262.                 return checkOnThursday;
  263.  
  264.         }
  265.  
  266.  
  267.  
  268.         public void setCheckOnThursday(boolean checkOnThursday) {
  269.  
  270.                 this.checkOnThursday = checkOnThursday;
  271.  
  272.         }
  273.  
  274.  
  275.  
  276.         public boolean getCheckOnFriday() {
  277.  
  278.                 return checkOnFriday;
  279.  
  280.         }
  281.  
  282.  
  283.  
  284.         public void setCheckOnFriday(boolean checkOnFriday) {
  285.  
  286.                 this.checkOnFriday = checkOnFriday;
  287.  
  288.         }
  289.  
  290.  
  291.  
  292.         public boolean getCheckOnSaturday() {
  293.  
  294.                 return checkOnSaturday;
  295.  
  296.         }
  297.  
  298.  
  299.  
  300.         public void setCheckOnSaturday(boolean checkOnSaturday) {
  301.  
  302.                 this.checkOnSaturday = checkOnSaturday;
  303.  
  304.         }
  305.  
  306.  
  307.  
  308.         public boolean getCheckOnSunday() {
  309.  
  310.                 return checkOnSunday;
  311.  
  312.         }
  313.  
  314.  
  315.  
  316.         public void setCheckOnSunday(boolean checkOnSunday) {
  317.  
  318.                 this.checkOnSunday = checkOnSunday;
  319.  
  320.         }
  321.  
  322.  
  323.  
  324.         // ActiveRecord Implementation
  325.  
  326.  
  327.  
  328.         // loads an instance of goal based on the provided id
  329.  
  330.         // when called from an activity pass this
  331.  
  332.         public void load(Activity activity) {
  333.  
  334.                 // here we build and execute our query based on constant members
  335.  
  336.                 Cursor cursor = sqliteDatabase.query(SQL_TABLE_NAME, null, COL_TYPE
  337.  
  338.                                 + "='" + type + "'", null, null, null, null);
  339.  
  340.                 // we use the cursor returned from our query to populate this
  341.  
  342.                 // object's writable members
  343.  
  344.                 if (cursor != null && cursor.moveToFirst()) {
  345.  
  346.                
  347.  
  348.                         // this allows the provided activity to manage the cursors life
  349.  
  350.                         // cycle
  351.  
  352.                         activity.startManagingCursor(cursor);
  353.  
  354.                         try {
  355.  
  356.                                 SimpleDateFormat formater = new SimpleDateFormat(
  357.  
  358.                                                 "yyyy-MM-dd HH:mm:ss");
  359.  
  360.                                 setType(cursor.getString(cursor.getColumnIndex(COL_TYPE)));
  361.  
  362.                                 setCheckInterval(cursor.getInt(cursor
  363.  
  364.                                                 .getColumnIndex(COL_CHECK_INTERVAL)));
  365.  
  366.                                 setAccuracy(cursor.getInt(cursor.getColumnIndex(COL_ACCURACY)));
  367.  
  368.                                 setCheckStartTime(formater.parse("0000-00-00 "
  369.  
  370.                                                 + cursor.getString(cursor
  371.  
  372.                                                                 .getColumnIndex(COL_CHECK_START_TIME))));
  373.  
  374.                                 setCheckEndTime(formater.parse("0000-00-00 "
  375.  
  376.                                                 + cursor.getString(cursor
  377.  
  378.                                                                 .getColumnIndex(COL_CHECK_END_TIME))));
  379.  
  380.                                 setTurnOffUnderPercentage(cursor.getInt(cursor
  381.  
  382.                                                 .getColumnIndex(COL_TURN_OFF_UNDER_PERCENTAGE)));
  383.  
  384.                                 setCheckOnMonday(cursor.getInt(cursor
  385.  
  386.                                                 .getColumnIndex(COL_CHECK_MONDAY)) != 0);
  387.  
  388.                                 setCheckOnTuesday(cursor.getInt(cursor
  389.  
  390.                                                 .getColumnIndex(COL_CHECK_TUESDAY)) != 0);
  391.  
  392.                                 setCheckOnWednesday(cursor.getInt(cursor
  393.  
  394.                                                 .getColumnIndex(COL_CHECK_WEDNESDAY)) != 0);
  395.  
  396.                                 setCheckOnThursday(cursor.getInt(cursor
  397.  
  398.                                                 .getColumnIndex(COL_CHECK_THURSDAY)) != 0);
  399.  
  400.                                 setCheckOnFriday(cursor.getInt(cursor
  401.  
  402.                                                 .getColumnIndex(COL_CHECK_FRIDAY)) != 0);
  403.  
  404.                                 setCheckOnSaturday(cursor.getInt(cursor
  405.  
  406.                                                 .getColumnIndex(COL_CHECK_SATURDAY)) != 0);
  407.  
  408.                                 setCheckOnSunday(cursor.getInt(cursor
  409.  
  410.                                                 .getColumnIndex(COL_CHECK_SUNDAY)) != 0);
  411.  
  412.                         } catch (Exception e) {
  413.  
  414.                                 Log.e("Settings.load(): ", e.getMessage());
  415.  
  416.                         }
  417.  
  418.                 }
  419.  
  420.         }
  421.  
  422.        
  423.  
  424.         // loads an instance of goal based on the provided id
  425.  
  426.         // when called from an activity pass this
  427.  
  428.         public void load() {
  429.  
  430.                 // here we build and execute our query based on constant members
  431.  
  432.                 Cursor cursor = sqliteDatabase.query(SQL_TABLE_NAME, null, COL_TYPE
  433.  
  434.                                 + "='" + type + "'", null, null, null, null);
  435.  
  436.                 // we use the cursor returned from our query to populate this
  437.  
  438.                 // object's writable members
  439.  
  440.                 if (cursor != null && cursor.moveToFirst()) {
  441.  
  442.                         try {
  443.  
  444.                                 SimpleDateFormat formater = new SimpleDateFormat(
  445.  
  446.                                                 "yyyy-MM-dd HH:mm:ss");
  447.  
  448.                                 setType(cursor.getString(cursor.getColumnIndex(COL_TYPE)));
  449.  
  450.                                 setCheckInterval(cursor.getInt(cursor
  451.  
  452.                                                 .getColumnIndex(COL_CHECK_INTERVAL)));
  453.  
  454.                                 setAccuracy(cursor.getInt(cursor.getColumnIndex(COL_ACCURACY)));
  455.  
  456.                                 setCheckStartTime(formater.parse("0000-00-00 "
  457.  
  458.                                                 + cursor.getString(cursor
  459.  
  460.                                                                 .getColumnIndex(COL_CHECK_START_TIME))));
  461.  
  462.                                 setCheckEndTime(formater.parse("0000-00-00 "
  463.  
  464.                                                 + cursor.getString(cursor
  465.  
  466.                                                                 .getColumnIndex(COL_CHECK_END_TIME))));
  467.  
  468.                                 setTurnOffUnderPercentage(cursor.getInt(cursor
  469.  
  470.                                                 .getColumnIndex(COL_TURN_OFF_UNDER_PERCENTAGE)));
  471.  
  472.                                 setCheckOnMonday(cursor.getInt(cursor
  473.  
  474.                                                 .getColumnIndex(COL_CHECK_MONDAY)) != 0);
  475.  
  476.                                 setCheckOnTuesday(cursor.getInt(cursor
  477.  
  478.                                                 .getColumnIndex(COL_CHECK_TUESDAY)) != 0);
  479.  
  480.                                 setCheckOnWednesday(cursor.getInt(cursor
  481.  
  482.                                                 .getColumnIndex(COL_CHECK_WEDNESDAY)) != 0);
  483.  
  484.                                 setCheckOnThursday(cursor.getInt(cursor
  485.  
  486.                                                 .getColumnIndex(COL_CHECK_THURSDAY)) != 0);
  487.  
  488.                                 setCheckOnFriday(cursor.getInt(cursor
  489.  
  490.                                                 .getColumnIndex(COL_CHECK_FRIDAY)) != 0);
  491.  
  492.                                 setCheckOnSaturday(cursor.getInt(cursor
  493.  
  494.                                                 .getColumnIndex(COL_CHECK_SATURDAY)) != 0);
  495.  
  496.                                 setCheckOnSunday(cursor.getInt(cursor
  497.  
  498.                                                 .getColumnIndex(COL_CHECK_SUNDAY)) != 0);
  499.  
  500.                         } catch (Exception e) {
  501.  
  502.                                 Log.e("Settings.load(): ", e.getMessage());
  503.  
  504.                         }
  505.  
  506.                 }
  507.  
  508.         }
  509.  
  510.  
  511.  
  512.         // this simply returns a cursor with all setting objects
  513.  
  514.         // this can be changed to return a list, however certain
  515.  
  516.         // activity classes have methods meant to interact with a cursor object
  517.  
  518.         public Cursor retrieveAll() {
  519.  
  520.                 return sqliteDatabase.query(SQL_TABLE_NAME, new String[] { COL_TYPE,
  521.  
  522.                                 COL_CHECK_INTERVAL, COL_ACCURACY, COL_CHECK_START_TIME,
  523.  
  524.                                 COL_CHECK_END_TIME, COL_TURN_OFF_UNDER_PERCENTAGE,
  525.  
  526.                                 COL_CHECK_MONDAY, COL_CHECK_TUESDAY, COL_CHECK_WEDNESDAY,
  527.  
  528.                                 COL_CHECK_THURSDAY, COL_CHECK_FRIDAY, COL_CHECK_SATURDAY,
  529.  
  530.                                 COL_CHECK_SUNDAY }, null, null, null, null, null);
  531.  
  532.         }
  533.  
  534.        
  535.  
  536.         //returns a list of all settings
  537.  
  538.         public List<Settings> retrieveList()
  539.  
  540.         {
  541.  
  542.                 List<Settings> settings = new ArrayList<Settings>();
  543.  
  544.                 Cursor cursor = sqliteDatabase.query(SQL_TABLE_NAME, new String[] { COL_TYPE,
  545.  
  546.                                 COL_CHECK_INTERVAL, COL_ACCURACY, COL_CHECK_START_TIME,
  547.  
  548.                                 COL_CHECK_END_TIME, COL_TURN_OFF_UNDER_PERCENTAGE,
  549.  
  550.                                 COL_CHECK_MONDAY, COL_CHECK_TUESDAY, COL_CHECK_WEDNESDAY,
  551.  
  552.                                 COL_CHECK_THURSDAY, COL_CHECK_FRIDAY, COL_CHECK_SATURDAY,
  553.  
  554.                                 COL_CHECK_SUNDAY }, null, null, null, null, null);
  555.  
  556.                 if (cursor != null && cursor.moveToFirst()) {
  557.  
  558.                         do{
  559.  
  560.                                 try {
  561.  
  562.                                         Settings s = new Settings();
  563.  
  564.                                         SimpleDateFormat formater = new SimpleDateFormat(
  565.  
  566.                                                         "yyyy-MM-dd HH:mm:ss");
  567.  
  568.                                         s.setType(cursor.getString(cursor.getColumnIndex(COL_TYPE)));
  569.  
  570.                                         s.setCheckInterval(cursor.getInt(cursor
  571.  
  572.                                                         .getColumnIndex(COL_CHECK_INTERVAL)));
  573.  
  574.                                         s.setAccuracy(cursor.getInt(cursor.getColumnIndex(COL_ACCURACY)));
  575.  
  576.                                         s.setCheckStartTime(formater.parse("0000-00-00 "
  577.  
  578.                                                         + cursor.getString(cursor
  579.  
  580.                                                                         .getColumnIndex(COL_CHECK_START_TIME))));
  581.  
  582.                                         s.setCheckEndTime(formater.parse("0000-00-00 "
  583.  
  584.                                                         + cursor.getString(cursor
  585.  
  586.                                                                         .getColumnIndex(COL_CHECK_END_TIME))));
  587.  
  588.                                         s.setTurnOffUnderPercentage(cursor.getInt(cursor
  589.  
  590.                                                         .getColumnIndex(COL_TURN_OFF_UNDER_PERCENTAGE)));
  591.  
  592.                                         s.setCheckOnMonday(cursor.getInt(cursor
  593.  
  594.                                                         .getColumnIndex(COL_CHECK_MONDAY)) != 0);
  595.  
  596.                                         s.setCheckOnTuesday(cursor.getInt(cursor
  597.  
  598.                                                         .getColumnIndex(COL_CHECK_TUESDAY)) != 0);
  599.  
  600.                                         s.setCheckOnWednesday(cursor.getInt(cursor
  601.  
  602.                                                         .getColumnIndex(COL_CHECK_WEDNESDAY)) != 0);
  603.  
  604.                                         s.setCheckOnThursday(cursor.getInt(cursor
  605.  
  606.                                                         .getColumnIndex(COL_CHECK_THURSDAY)) != 0);
  607.  
  608.                                         s.setCheckOnFriday(cursor.getInt(cursor
  609.  
  610.                                                         .getColumnIndex(COL_CHECK_FRIDAY)) != 0);
  611.  
  612.                                         s.setCheckOnSaturday(cursor.getInt(cursor
  613.  
  614.                                                         .getColumnIndex(COL_CHECK_SATURDAY)) != 0);
  615.  
  616.                                         s.setCheckOnSunday(cursor.getInt(cursor
  617.  
  618.                                                         .getColumnIndex(COL_CHECK_SUNDAY)) != 0);
  619.  
  620.                                         s.setSQLiteDatabase(sqliteDatabase);
  621.  
  622.                                         settings.add(s);
  623.  
  624.                                 } catch (Exception e) {
  625.  
  626.                                         Log.e("Settings.load(): ", e.getMessage());
  627.  
  628.                                 }
  629.  
  630.                         }while(cursor.moveToNext());
  631.  
  632.                 }
  633.  
  634.                 return settings;
  635.  
  636.         }
  637.  
  638.  
  639.  
  640.         // this handles updating of settings, currently this does not support
  641.  
  642.         // inserting
  643.  
  644.         // new settings, we can simply update the 3 pre-existing settings
  645.  
  646.         public long save() {
  647.  
  648.                 ContentValues values = new ContentValues();
  649.  
  650.                 SimpleDateFormat formater = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  651.  
  652.                 values.put(COL_CHECK_INTERVAL, getCheckInterval());
  653.  
  654.                 values.put(COL_ACCURACY, getAccuracy());
  655.  
  656.                 values.put(COL_CHECK_START_TIME, formater.format(getCheckStartTime()));
  657.  
  658.                 values.put(COL_CHECK_END_TIME, formater.format(getCheckEndTime()));
  659.  
  660.                 values.put(COL_CHECK_MONDAY, getCheckOnMonday() ? 1 : 0);
  661.  
  662.                 values.put(COL_CHECK_TUESDAY, getCheckOnTuesday() ? 1 : 0);
  663.  
  664.                 values.put(COL_CHECK_WEDNESDAY, getCheckOnWednesday() ? 1 : 0);
  665.  
  666.                 values.put(COL_CHECK_THURSDAY, getCheckOnThursday() ? 1 : 0);
  667.  
  668.                 values.put(COL_CHECK_FRIDAY, getCheckOnFriday() ? 1 : 0);
  669.  
  670.                 values.put(COL_CHECK_SATURDAY, getCheckOnSaturday() ? 1 : 0);
  671.  
  672.                 values.put(COL_CHECK_SUNDAY, getCheckOnSunday() ? 1 : 0);
  673.  
  674.                 values.put(COL_TURN_OFF_UNDER_PERCENTAGE, getTurnOffUnderPercentage());
  675.  
  676.  
  677.  
  678.                 sqliteDatabase.execSQL("UPDATE " + SQL_TABLE_NAME +" SET " +
  679.  
  680.                                 COL_CHECK_INTERVAL +" = " +getCheckInterval() + " , " +
  681.  
  682.                                 COL_ACCURACY +" = " +getAccuracy() + " , " +
  683.  
  684.                                 COL_CHECK_START_TIME +" = " +"'"+ formater.format(getCheckStartTime())+"'" + " , " +
  685.  
  686.                                 COL_CHECK_END_TIME+" = " +"'"+formater.format(getCheckEndTime())+"'" + " , " +
  687.  
  688.                                 COL_CHECK_MONDAY +" = " +(getCheckOnMonday() ? 1 : 0) + " , " +
  689.  
  690.                                 COL_CHECK_TUESDAY +" = " +(getCheckOnTuesday() ? 1 : 0) + " , " +
  691.  
  692.                                 COL_CHECK_WEDNESDAY +" = " +(getCheckOnWednesday() ? 1 : 0) + " , " +
  693.  
  694.                                 COL_CHECK_THURSDAY +" = " +(getCheckOnThursday() ? 1 : 0) + " , " +
  695.  
  696.                                 COL_CHECK_FRIDAY +" = " +(getCheckOnFriday() ? 1 : 0) + " , " +
  697.  
  698.                                 COL_CHECK_SATURDAY +" = " +(getCheckOnSaturday() ? 1 : 0) + " , " +
  699.  
  700.                                 COL_CHECK_SUNDAY +" = " +(getCheckOnSunday() ? 1 : 0) + " , " +
  701.  
  702.                                 COL_TURN_OFF_UNDER_PERCENTAGE +" = " +getTurnOffUnderPercentage() +
  703.  
  704.                                 " WHERE " +COL_TYPE + " = "+ "'"+getType()+"'");
  705.  
  706.                
  707.  
  708.                 return 0;//sqliteDatabase.update(SQL_TABLE_NAME, values, COL_TYPE + " = "
  709.  
  710.                                 //+ "'"+getType()+"'", null);
  711.  
  712.         }
  713.  
  714.  
  715.  
  716.         // we never want to delete presets or custom settings
  717.  
  718.         public boolean delete() {
  719.  
  720.                 return false;
  721.  
  722.         }
  723.  
  724.  
  725.  
  726.         // simple setter for this objects SQLiteDatabase member
  727.  
  728.         public void setSQLiteDatabase(SQLiteDatabase sqliteDatabase) {
  729.  
  730.                 this.sqliteDatabase = sqliteDatabase;
  731.  
  732.         }
  733.  
  734.  
  735.  
  736. }
  737.  
  738.  
Parsed in 0.091 seconds, using GeSHi 1.0.8.4


I used both raw sql and the provided update method and both are acting the same. Could this have to do with the primary key of the table being a string?

any help would be greatly appreciated.
Last edited by dbergum on Fri Oct 23, 2009 9:12 pm, edited 1 time in total.
dbergum
Freshman
Freshman
 
Posts: 5
Joined: Thu Oct 22, 2009 9:49 pm

Top

Postby dbergum » Fri Oct 23, 2009 9:11 pm

Apparently The string as a primary key was an issue. I added an int id to this table and did some quick code changes and now it functions as expected. Weird.
dbergum
Freshman
Freshman
 
Posts: 5
Joined: Thu Oct 22, 2009 9:49 pm

Top

Return to Networking & Database Problems

Who is online

Users browsing this forum: No registered users and 8 guests