2016-04-13 20 views
-1

sqlite ile ilgili bir projem var. veri eklediğimde, uygulama kuvveti kapatın. Kod aracılığıyla sqlite'a veri ekleyebildim, ancak formda veri eklerken zorluk çekiyorum. Uygulama gücünü yakından yaşadım, bana kim yardım edebilir?SQLite'ye veri nasıl eklenir?

Bu benim kod

PemainDbAdapter.java

public class PemainDbAdapter { 
public static final String KEY_ROWID = "_id"; 
public static final String KEY_NIM = "nim"; 
public static final String KEY_NAMA = "nama"; 
public static final String KEY_JURUSAN = "jurusan"; 
public static final String KEY_TELP = "no_telp"; 
public static final String KEY_UMUR = "umur"; 
public static final String TAG = "CountriesDbAdapter"; 
public DatabaseHelper mDbHelper; 
public SQLiteDatabase mDb; 
public static final String DATABASE_NAME = "mvp"; 
public static final String SQLITE_TABLE = "daftar_pemain"; 
public static final int DATABASE_VERSION = 1; 
public final Context mCtx; 
public static final String DATABASE_CREATE = 
     "CREATE TABLE if not exists " + SQLITE_TABLE + " (" + 
       KEY_ROWID + " integer PRIMARY KEY autoincrement," + 
       KEY_NIM + "," + 
       KEY_NAMA + "," + 
       KEY_JURUSAN + "," + 
       KEY_TELP + "," + 
       KEY_UMUR + "," + 
       " UNIQUE (" + KEY_NIM +"));"; 
public static class DatabaseHelper extends SQLiteOpenHelper { 
    DatabaseHelper(Context context) { 
     super(context, DATABASE_NAME, null, DATABASE_VERSION); 
    } 
    @Override 
    public void onCreate(SQLiteDatabase db) { 
     Log.w(TAG, DATABASE_CREATE); 
     db.execSQL(DATABASE_CREATE); 
    } 
    @Override 
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { 
     Log.w(TAG, "Upgrading database from version " + oldVersion + " to " 
       + newVersion + ", which will destroy all old data"); 
     db.execSQL("DROP TABLE IF EXISTS " + SQLITE_TABLE); 
     onCreate(db); 
    } 
} 
public PemainDbAdapter(Context ctx) { 
    this.mCtx = ctx; 
} 
public PemainDbAdapter open() throws SQLException { 
    mDbHelper = new DatabaseHelper(mCtx); 
    mDb = mDbHelper.getWritableDatabase(); 
    return this; 
} 
public void close() { 
    if (mDbHelper != null) { 
     mDbHelper.close(); 
    } 
} 
public long createPemain(String nim, String nama, String jurusan, String no_telp, String umur) { 
    ContentValues initialValues = new ContentValues(); 
    initialValues.put(KEY_NIM, nim); 
    initialValues.put(KEY_NAMA, nama); 
    initialValues.put(KEY_JURUSAN, jurusan); 
    initialValues.put(KEY_TELP, no_telp); 
    initialValues.put(KEY_UMUR, umur); 
    return mDb.insert(SQLITE_TABLE, null, initialValues); 
} 
public boolean deleteAllPemain() { 
    int doneDelete = 0; 
    doneDelete = mDb.delete(SQLITE_TABLE, null , null); 
    Log.w(TAG, Integer.toString(doneDelete)); 
    return doneDelete > 0; 
} 
public Cursor fetchPemainByName(String inputText) throws SQLException { 
    Log.w(TAG, inputText); 
    Cursor mCursor = null; 
    if (inputText == null || inputText.length() == 0) { 
     mCursor = mDb.query(SQLITE_TABLE, new String[] {KEY_ROWID, 
         KEY_NIM, KEY_NAMA, KEY_JURUSAN, KEY_TELP, KEY_UMUR}, 
       null, null, null, null, null, null); 
    } 
    else { 
     mCursor = mDb.query(true, SQLITE_TABLE, new String[] {KEY_ROWID, 
         KEY_NIM, KEY_NAMA, KEY_JURUSAN, KEY_TELP, KEY_UMUR}, 
       KEY_NAMA + " like '%" + inputText + "%'", null, 
       null, null, null, null, null); 
    } 
    if (mCursor != null) { 
     mCursor.moveToFirst(); 
    } 
    return mCursor; 
} 
public Cursor fetchAllPemain() { 
    Cursor mCursor = mDb.query(SQLITE_TABLE, new String[] {KEY_ROWID, 
        KEY_NIM, KEY_NAMA, KEY_JURUSAN, KEY_TELP, KEY_UMUR}, 
      null, null, null, null, null, null); 

    if (mCursor != null) { 
     mCursor.moveToFirst(); 
    } 
    return mCursor; 
} 
public void insertSomePemain() { 
    createPemain("125410011", "Adi Saputra", "Teknik Informstika", "081904445501", "20 Tahun"); 
    createPemain("125410012", "Mukti Setyawan", "Teknik Informatika", "081904445502", "19 Tahun"); 
    createPemain("125410013", "Titit", "Siatem Informasi", "081904445503", "21 Tahun"); 

} 

Input_Pemain.java

public class Input_Pemain extends Activity { 
public PemainDbAdapter dbHelper; 
private EditText editTextNim, editTextNama, editTextJurusan, editTextTelepon, editTextUmur; 
private Button btnInput; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_input__pemain); 

    this.editTextNim = (EditText) this.findViewById(R.id.editNIM); 
    this.editTextNama = (EditText) this.findViewById(R.id.editNama); 
    this.editTextJurusan = (EditText) this.findViewById(R.id.editJurusan); 
    this.editTextTelepon = (EditText) this.findViewById(R.id.editTelepon); 
    this.editTextUmur = (EditText) this.findViewById(R.id.editUmur); 
    this.btnInput = (Button) this.findViewById(R.id.btnInput); 

    btnInput.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      String nim = editTextNim.getText().toString().trim(); 
      String nama = editTextNama.getText().toString().trim(); 
      String jurusan = editTextJurusan.getText().toString().trim(); 
      String no_telp = editTextTelepon.getText().toString().trim(); 
      String umur = editTextUmur.getText().toString().trim(); 

      if(nim.equals("")){ 
       Toast.makeText(getApplicationContext(), "Tolong masukan data lengkap!", Toast.LENGTH_SHORT).show(); 
      }else if(nama.equals("")){ 
       Toast.makeText(getApplicationContext(), "Tolong masukan data lengkap!", Toast.LENGTH_SHORT).show(); 
      }else if(jurusan.equals("")){ 
       Toast.makeText(getApplicationContext(), "Tolong masukan data lengkap!", Toast.LENGTH_SHORT).show(); 
      }else if(no_telp.equals("")){ 
       Toast.makeText(getApplicationContext(), "Tolong masukan data lengkap!", Toast.LENGTH_SHORT).show(); 
      }else if(umur.equals("")){ 
       Toast.makeText(getApplicationContext(), "Tolong masukan data lengkap!", Toast.LENGTH_SHORT).show(); 
      }else { 
       dbHelper = new PemainDbAdapter(Input_Pemain.this); 
       dbHelper.createPemain(nim, nama, jurusan, no_telp, umur); 
      } 
     } 
    }); 
} 

Yardım edin lütfen!

+1

Uygulama gücün kapalı, stacktrace paylaş! – 0xDEADC0DE

+0

Nasıl Yapılır? özür dilerim @ 0xDEADC0DE –

+0

Android Studio veya Eclipse'de bir yerde, her şeyin günlüğe kaydedildiği logcat adında bir pencere/panel var. Uygulamanız kapalıyken, bir stacktrace kaydedilir. Kopyalayın ve buraya yapıştırın – 0xDEADC0DE

cevap

1

Yalnızca createPemain() öğesinde 1. parametresini geçirirsiniz.

RId alanı, ekleme sorgunuzda bulunamadı. Deneyin ....

Bu size yardımcı olur.

İlgili konular