Make your key_id autoincrement and it should be fine!

On 1 May 2013 16:49, Marty Ballard <[email protected]> wrote:

> It appears to me that you are always inserting key_id = 0, therefore this
> would be a duplicate insert.  I believe you should be increasing this by +1
> for each insert.
>
>
> On Friday, April 26, 2013 11:20:20 AM UTC-5, Nathan wrote:
>>
>> I can not figure out what is happening here for the life of me.
>> Everything was working fine. I went to bed one night and came back the next
>> and now my app will not read or write to my db and gives me no errors.
>> Please help any advice would be great.
>>
>>
>> My DB Handler:
>> ==============================**==============================**
>> ==============================**=====================
>> import android.content.ContentValues;
>> import android.content.Context;
>> import android.database.Cursor;
>> import android.database.sqlite.**SQLiteDatabase;
>> import android.database.sqlite.**SQLiteOpenHelper;
>>
>> public class DatabaseHandler extends SQLiteOpenHelper {
>>     // All Static variables
>>     // Database Version
>>     private static final int DATABASE_VERSION = 1;
>>
>>     // Database Name
>>     private static final String DATABASE_NAME = "GP";
>>
>>     // Contacts table name
>>     private static final String TABLE_VERSION = "GPVersion";
>>
>>
>>     // Contacts Table Columns names
>>     private static final String KEY_ID = "id";
>>     private static final String KEY_VERSION = "name";
>>
>>  public DatabaseHandler(Context context) {
>>         super(context, DATABASE_NAME, null, DATABASE_VERSION);
>>     }
>>
>> @Override
>>  public void onCreate(SQLiteDatabase db) {
>> // TODO Auto-generated method stub
>>         String CREATE_VERSION_TABLE = "CREATE TABLE IF NOT EXISTS " +
>> TABLE_VERSION + "("
>>                 + KEY_ID + " INTEGER PRIMARY KEY," + KEY_VERSION + "
>> TEXT" + ")";
>>         db.execSQL(CREATE_VERSION_**TABLE);
>> }
>>
>> @Override
>> public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
>> // TODO Auto-generated method stub
>>         //db.execSQL("DROP TABLE IF EXISTS " + TABLE_VERSION);
>>
>>         // Create tables again
>>         //onCreate(db);
>> }
>>
>>   // Adding new version
>>     void addGPVersion(String version) {
>>         SQLiteDatabase db = this.getWritableDatabase();
>>
>>         ContentValues values = new ContentValues();
>>         values.put(KEY_ID, "0"); // Pair
>>         values.put(KEY_VERSION, version); // Pair
>>
>>         // Inserting Row
>>         db.insert(TABLE_VERSION, null, values);
>>         db.close(); // Closing database connection
>>     }
>>
>>
>>     // Getting students Count
>>     public String getGPVersion() {
>>     SQLiteDatabase db = this.getReadableDatabase();
>>     String q="SELECT " + KEY_VERSION + " FROM " + TABLE_VERSION + "
>> WHERE " + KEY_ID + "='0'";
>>     String z;
>>
>>     Cursor cursor = db.rawQuery(q,null);
>>     if (cursor != null && cursor.getCount()>0) {
>>     cursor.moveToFirst();
>>     z=cursor.getString(0);
>>     cursor.close();
>>         db.close();
>>         return z;
>>
>>     }
>>     else
>>     {
>>     cursor.close();
>>     db.close();
>>          return "na";
>>     }
>>     }
>>
>>
>> ==============================**==============================**
>> ==============================**=====================
>>
>>
>>
>> Main Activity:
>> ==============================**==============================**
>> ==============================**=====================
>> @Override
>> protected void onCreate(Bundle savedInstanceState) {
>> super.onCreate(**savedInstanceState);
>>
>>         setContentView(R.layout.main);
>>        CheckGPVersion();
>> }
>>
>>
>>     private void CheckGPVersion()
>>     {
>>      DatabaseHandler db = new DatabaseHandler(this);
>>          String a = "";
>>          a = db.getGPVersion();
>>
>>           EditText txtEffortCode = (EditText) findViewById(R.id.**
>> txtEffortCode);
>>          txtEffortCode.setText(a);
>> }
>>
>>
>> public void onGoClick(View view)  // Input Effort Code
>>     {
>>  EditText txtEffortCode = (EditText) findViewById(R.id.**txtEffortCode);
>>
>>      if (txtEffortCode.getText().**length() != 0){
>>         //Do Something
>>      DatabaseHandler db = new DatabaseHandler(this);
>>      db.addGPVersion(txtEffortCode.**getText().toString().**
>> toUpperCase(Locale.getDefault(**)));
>>      txtEffortCode.setText("");
>>      Toast.makeText(this, "Input Success!", Toast.LENGTH_SHORT).show();
>>      }
>>      else
>>      {
>>      //Alert no code input
>>      Toast.makeText(this, "You must enter 'EFFORT CODE'!",
>> Toast.LENGTH_SHORT).show();
>>      }
>>      }
>> ==============================**==============================**
>> ==============================**=====================
>>
>>
>> While it creates the database or so I think it does as the app shows
>> under data 4.00K. When it was inputting data the other night, the data
>> field showed 12.00K. Argh, what is going on here? I use sqlite on many
>> other apps and they work fine. Did something get corrupt? I tried cleaning
>> the project, rebooting etc. nothing. Thanks in advance.
>>
>  --
> --
> You received this message because you are subscribed to the Google
> Groups "Android Developers" group.
> To post to this group, send email to [email protected]
> To unsubscribe from this group, send email to
> [email protected]
> For more options, visit this group at
> http://groups.google.com/group/android-developers?hl=en
> ---
> You received this message because you are subscribed to the Google Groups
> "Android Developers" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/groups/opt_out.
>
>
>



-- 
*Παύλος-Πέτρος Τουρνάρης*
*Android  & Software Developer*

   - *http://goo.gl/TsJ8u*
   - *http://acschedule.org*

-- 
-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Android Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to