2017-06-27 3 views
0

Hallo, ich mache ein Andorid-Studio-Projekt, wenn ich meine Daten die Anwendung hinzufügen und dann versuchen, die Daten zu sehen bekommen einen Fehler mit der Aufschrift "Fehler, nichts gefunden". Ich habe eine SQLite-Datenbank erstellt und hoffe, dass jemand mir helfen kann, den Fehler zu finden.Android Studio Projekt

package ie.wit.andrew.drivingschool; 

import android.content.ContentValues; 
import android.content.Context; 
import android.database.Cursor; 
import android.database.sqlite.SQLiteDatabase; 
import android.database.sqlite.SQLiteOpenHelper; 

public class DatabaseHelper extends SQLiteOpenHelper { 
public static final String DATABASE_NAME = "Driver.db"; 
public static final String TABLE_NAME = "driver_table"; 
public static final String COL_1 = "ID"; 
public static final String COL_2 = "NAME"; 
public static final String COL_3 = "DATE OF BIRTH"; 
public static final String COL_4 = "LOGBOOK NUMBER"; //Making up my 
                 //database of the 
                 //information I will 
                 //be entering into my 
                 //application 
public static final String COL_5 = "LESSON NUMBER"; 

public DatabaseHelper(Context context) { 
    super(context, DATABASE_NAME, null, 1); //when this constructor is 
              //called your Database has been 
              //created 

} 

@Override 
public void onCreate(SQLiteDatabase db) { 
    db.execSQL("create table " + TABLE_NAME + " (ID INTEGER PRIMARY KEY 
AUTOINCREMENT,NAME TEXT,DATE OF BIRTH TEXT, LOGBOOK NUMBER TEXT, LESSON 
NUMBER INTEGER)"); 
} 

@Override 
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { 
    db.execSQL("DROP TABLE IF EXISTS "+TABLE_NAME); 
    onCreate(db); 

} 

public boolean insertData(String name, String dateofbirth, String 
logbooknumber, String lessonnumber) { 
    SQLiteDatabase db = this.getWritableDatabase(); 
    ContentValues contentValues = new ContentValues(); 
    contentValues.put(COL_2,name); 
    contentValues.put(COL_3,dateofbirth); 
    contentValues.put(COL_4,logbooknumber); 
    contentValues.put(COL_5,lessonnumber); 
    long result = db.insert(TABLE_NAME,null,contentValues); //This method 
                  //returns -1 
    if (result == -1) 
     return false; 
    else 
     return true; 
} 

public Cursor getAllData() { 
    SQLiteDatabase db = this.getWritableDatabase(); 
    Cursor res = db.rawQuery("select * from "+ TABLE_NAME,null); 
    return res; 
} 
} 



package ie.wit.andrew.drivingschool; 

import android.database.Cursor; 
import android.support.v7.app.AlertDialog; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.Toast; 

public class DrivingSchool extends AppCompatActivity { 

DatabaseHelper myDb; 
EditText editName,editDateofBirth,editLogbookNumber,editLessonNumber; 
Button btnAddData; 
Button btnviewAll; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_driving_school); 
    myDb = new DatabaseHelper(this); 

    editName = (EditText)findViewById(R.id.editText_name); 
    editDateofBirth = (EditText)findViewById(R.id.editText_dateofbirth); 
    editLogbookNumber = (EditText)findViewById(R.id.editText_logbooknumber); 
    editLessonNumber = (EditText)findViewById(R.id.editText_lessonNumber); 
    btnAddData = (Button)findViewById(R.id.button_add); 
    btnviewAll = (Button)findViewById(R.id.button_viewAll); 
    AddData(); 
    viewAll(); 
} 

    public void AddData() { 
    btnAddData.setOnClickListener(
      new View.OnClickListener() { 
       @Override 
       public void onClick(View v) { 
        boolean isInserted = 
    myDb.insertData(editName.getText().toString(), 
          editDateofBirth.getText().toString(), 
          editLogbookNumber.getText().toString(), 
          editLessonNumber.getText().toString()); 
        if(isInserted = true) 
         Toast.makeText(DrivingSchool.this,"Data 
    Inserted",Toast.LENGTH_LONG).show(); 
        else 
         Toast.makeText(DrivingSchool.this,"Data not 
    Inserted", Toast.LENGTH_LONG).show(); 
       } 
       } 
    ); 
    } 

    public void viewAll() { 
    btnviewAll.setOnClickListener(
      new View.OnClickListener() { 
       @Override 
       public void onClick(View v){ 
        Cursor res = myDb.getAllData(); 
        if(res.getCount() == 0) { 
          //Show Message 
         showMessage("Error", "Nothing found"); 
         return; 
        } 

        StringBuffer buffer = new StringBuffer(); 
        while(res.moveToNext()) { 
         buffer.append("ID : "+ res.getString(0)+"\n"); 
         buffer.append("NAME : "+ res.getString(1)+"\n"); 
         buffer.append("DATE OF BIRTH : "+ 
         res.getString(2)+"\n"); 
         buffer.append("LOGBOOK NUMBER : "+ 
         res.getString(3)+"\n\n");; 

        } 

        //showdata 
        showMessage("Data",buffer.toString()); 
       } 
      } 
    ); 

    } 

    public void showMessage(String title,String Message){ 
     AlertDialog.Builder builder = new AlertDialog.Builder(this); 
     builder.setCancelable(true); 
     builder.setTitle(title); 
     builder.setMessage(Message); 
     builder.show(); 
    } 
} 
+0

den Code hinzufügen, wo Sie die sQLite –

+0

Fehler in onCreate (SQLiteDatabase db) nennen (entfernen Raum zwischen GEBURTSDATUM und anderen Spalten) – akhilesh0707

+0

können Sie uns die genaue Fehlermeldung und/oder Stack Trace? – DShade

Antwort

0

Versuche Entfernen Raum von Ihrem Spaltennamen

+0

Ich habe versucht, Leerzeichen zu entfernen und ich bekomme den gleichen Fehler leider –

Verwandte Themen