Beiträge von hansn

    Durch eine zusätzliche Funktion bin ich nun auf eine Alternativlösung gestoßen. Ich füge an jedem Datensatz nun das aktuelle Datum ein. Somit kann ich jeden Datensatz eindeutig identifizieren, da die Wahrscheinlichkeit auch sehr gering ist, dass wenn mehrere Benutzer auf der DB arbeiten, die gleiche Datumsinformation erzeugt wird.


    Hier der Code:

    Code
    myDB = this.openOrCreateDatabase(MY_DB_NAME, MODE_PRIVATE, null);
    Date d = new Date();
    String current_date = (String)DateFormat.format("yyyy/MM/dd kk:mm:ss", d.getTime());


    Dann habe ich noch eine kleine Routine eingebaut, falls ein neuer Datensatz erzeugt wird oder ein Datensatz nur editiert werden muss.


    Die Formatierung des Codes sei an dieser Stelle bitte entschuldigt. Die hab ich nicht ausm Editor übernommen ;)
    greets

    Ich habe mir jetzt einmal mittels

    Code
    String ColumnCompany[] = id_cursor.getColumnNames();


    Die vorhandenen Spaltennamen anzeigen lassen. Dabei habe ich "last_insert_row()" zurückbekommen... also arbeitet die Funktion doch nicht wie gewünscht.


    Vlt git's weitere Anregungen für mein Problemchen :)
    greets

    Danke auf jeden Fall schon mal für den Tip! Komischerweise bekomme ich bei der id -1 zurück

    Code
    Cursor id_cursor = myDB.rawQuery("SELECT last_insert_rowid()",null);
    startManagingCursor(id_cursor);
    long new_id = id_cursor.getColumnIndex("_id");
    Toast.makeText(getApplicationContext(), "id: "+new_id, Toast.LENGTH_SHORT).show();


    greets

    Hy!


    Ich trage einen Datensatz mittels folgendem Code ein:

    Code
    myDB.execSQL("INSERT INTO " +MY_DB_TABLE + "(company, surname, firstname, adress, postcode, city, phone, email) "+"VALUES ('"+DataCompany.getText().toString()+"',"+"'"+DataSurname.getText().toString()+"',"+"'"+DataFirstname.getText().toString()+"',"+"'"+DataAdress.getText().toString()+"',"+"'"+DataPostcode.getText().toString()+"',"+"'"+DataCity.getText().toString()+"',"+"'"+DataPhone.getText().toString()+"',"+"'"+DataEmail.getText().toString()+"');");


    Gibt es eine elegantere Lösung die neu angelegte ID des Datensatzes abzufragen, ohne eine SELECT anweisung mit den eben eingetragenen Daten zu machen?


    In MYSQL wäre der Befehl ja mysql_insert_id() glaube ich, wenn autoincrement verwendet wurde...


    greets

    Gewaltig dankeschön!


    Gibt es zusätzlich noch auf die schnelle eine Funktion für den Cursor damit ich überprüfen kann ob er Daten gefunden hat oder auch nicht?
    Praktisch wäre nämlich, dass wenn auf die Sucheingabe keine Einträge gefunden wurden, eine Standardnachricht in den TextView ausgegeben wird.


    LG

    Hallo miteinander!


    Ich komme seit Kurzem bei einem Projekt nicht mehr weiter. Ich will aus einer SQLite Datenbank Datensätze auslesen, wobei der Benutzer die Suchargumente festlegen kann.


    Code
    //die beiden Strings kommen eigentlich aus einem EditText & Spinner. Sind der Einfachheit halber nur so definiert worden. 
    String search_mode = "surname" 
    String search_text = "Mayr" 
    Cursor c = myDB.rawQuery("SELECT _id, company, surname, firstname, email FROM " + SQLiteAdvanced.MY_DB_TABLE + " WHERE " + search_mode + " LIKE" + search_text + ";",null);


    Das Problem liegt derzeit noch darin, dass keine Daten gefunden werden können und meine ListView daher immer leer bleibt.


    Beispiele hab ich mir schon etliche durchgelesen, nur leider werde ich nicht viel schlauer.


    Besten Dank im Voraus und LG