Net Framework, Office 365, C#, WPF, ASP.Net, Visual Studio, Programmiersprachen PC, C# Programmieren, vba, SQL Server, free source code snippets Antivirus free
#

SQLite: new ID bei Insert Add

 

Wie bekommt man die neue ID beim Einfügen eines Datensatzes in SQLite

 

Lösung:

Der Rückgabewert eine Sqlite.Insert Anweisung ergibt immer automisch die neue ID einer Tabelle, sofern eine Integer-Autoimcrement Spalte vorhanden ist.

Bei einem Fehler wird eine -1 ausgegeben als

long newID = db.insert("tbl_Notes", null, values);

 

Bei einer Taellen-Struktur, welche ein eindeutiges ID Feld aufweist.

Hierzu muss beim Create der SQLite Tabelle Integer Primary Key Autoincrement angegeben werden

CREATE TABLE tbl_Notes (  IDNote INTEGER PRIMARY KEY AUTOINCREMENT ..

 

 

 

public long add_Note(String sTitle, String sText, Date dtNoteDay) {
   
//--------< add_Note() >--------
    //*add a recordset to the tbl_Notes Table
    //< getDB >
   
SQLiteDatabase db = this.getWritableDatabase();
   
//</ getDB >

    //< set_Values >
   
SimpleDateFormat fmtDate = new SimpleDateFormat("YYYYMMdd");
    String sDate_Note = fmtDate.format(dtNoteDay);
    String sDate_Now = fmtDate.format(
new Date());

    ContentValues values =
new ContentValues();
    values.put(
"Title", sTitle);
   
//values.put("Text", sText);
    //values.put("dtDay", sDate_Note);
    //values.put("dtEdit", sDate_Now);
    //</ set_Values >

    //< add >
   
long newID = db.insert("tbl_Notes", null, values);
   
//</ add >

    //< out >
   
if (newID == -1)
    {
       
//*SQLite Error on Insert: -1
       
return -1;
    }
   
else
   
{
       
//*return value is new ID
       
return newID;
    }
   
//</ out >
    //--------</ add_Note() >--------
}

 

 

 

 

Datenbank auf Android

Im Localhost->sqlite

Datenbank in SQLite auf Android: http://192.168.178.23:8080/# (Android Debug Database)

IDNote

Title

Text

dtDay

dtEdit

5

dfffcName

2018-09-28 17:33:52

11

not online

2018-09-28 18:03:20

12

new Data

2018-09-28 18:05:12

13

924Name

2018-10-01 07:23:11

 

 

Dazugehörende Tabellenstruktur:

@Override
public void onCreate(SQLiteDatabase db) {
   
//--------< onCreate() >--------
    //*Create Tables
   
String createTable = "CREATE TABLE tbl_Notes " +
           
"(  IDNote INTEGER PRIMARY KEY AUTOINCREMENT " +
           
" , Title TEXT " +      //*Note of type TEXT
           
" , Text TEXT " +       //*Note of type TEXT
           
" , dtDay DATETIME " +
           
" , dtEdit DATETIME DEFAULT CURRENT_TIMESTAMP " +
           
")"
           
;
    db.execSQL(createTable);
   
//--------</ onCreate() >--------
}

 

 

Mobile
»
SQLite: Datum speichern
»
SQLite in Android: ein komplettes Code Beispiel
»
Sqlite : Werte ändern
»
SQLite: new ID bei Insert Add
»
SQLite unter Android App auswerten

.

Jobs, Projekte, Angebote für Freiberufler, Selbstständig an Raimund.Popp@Microsoft-Programmierer.de