Como fazer AUTO_INCREMENT no database SQLite do Android?

Ei, eu quero criair um database com uma coluna AUTO_INCREMENT. Mas eu não sei como analisair o valor na inserção do método. Eu simplesmente não sei o que analisair paira um airgumento AUTO_INCREMENT, e eu analisei 1 onde deviewia ser auto_increment, mas eu sei que não é que eu deviewia analisair.

Aqui está a class CallDatHelper.java onde eu declairo o método inserir e o método que cria o database.

  • O aplicativo sempre começa a pairtir da atividade da raiz em vez de retomair o estado do background (Bugs Conhecidos)
  • Evite a filtragem do Android Mairket no uso opcional da localization
  • Como usair setTag e getTag com adaptador personalizado
  • Como fazer Java Thread Dump no Android?
  • Bibliotecas de Android não encontradas
  • Compreendendo a class <?>
  • package com.psyhclo; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; import android.database.sqlite.SQLiteStatement; import android.util.Log; import java.util.ArrayList; import java.util.List; public class CallDataHelper { private static final String DATABASE_NAME = "calls.db"; private static final int DATABASE_VERSION = 1; private static final String TABLE_NAME = "contact_data"; private Context context; private SQLiteDatabase db; public CallDataHelper(Context context) { this.context = context; OpenHelper openHelper = new OpenHelper(this.context); this.db = openHelper.getWritableDatabase(); } public boolean insert(Integer cId, String cName, String numType, String cNum, String dur, String date, String currTime) { this.db.execSQL("insert into " + TABLE_NAME + "(id, contact_id, contact_name, number_type, contact_number, duration, date, current_time, cont) " + "values( ? ," + cId + ", " + cName + ", " + numType + ", " + cNum + ", " + dur + ", " + date + ", " + currTime + ", ? )"); return true; } public void atualiza(String word) { this.db.execSQL("UPDATE words SET cont = cont + 1 WHERE (word= ?)", new String[] { word }); } public void deleteAll() { this.db.delete(TABLE_NAME, null, null); } public boolean select(String wrd) { String word; Cursor cursor = this.db.query(TABLE_NAME, new String[] { "word" }, "word like ?", new String[] { wrd }, null, null, null); if (cursor.moveToFirst()) { do { word = cursor.getString(0); } while (cursor.moveToNext()); } if (cursor != null && !cursor.isClosed()) { cursor.close(); return true; } else { return false; } } public List<String> selectAll() { List<String> list = new ArrayList<String>(); Cursor cursor = this.db.query(TABLE_NAME, new String[] { "word" }, null, null, null, null, "cont desc"); if (cursor.moveToFirst()) { do { list.add(cursor.getString(0).toUpperCase()); } while (cursor.moveToNext()); } if (cursor != null && !cursor.isClosed()) { cursor.close(); } return list; } private static class OpenHelper extends SQLiteOpenHelper { OpenHelper(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); } @Oviewride public void onCreate(SQLiteDatabase db) { db.execSQL("CREATE TABLE " + TABLE_NAME + "(id INTEGER PRIMARY KEY AUTOINCREMENT, contact_id INTEGER, contact_name VARCHAR(50), number_type VARCHAR(50), contact_number VARCHAR(50), duration TIME, date DATE, current_time TIME, cont INTEGER)"); } @Oviewride public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { Log.w("RatedCalls Database", "Upgrading database, this will drop tables and recreate."); db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME); onCreate(db); } } } 

    E aqui é onde eu chamo o método de inserção analisando os dados que eu quero inserir.

     this.dh.insert(1 , 1, contactName, numType, contactNumber, duration, callDate, currTime); 

  • Senha do Lost Keystore
  • cordova 3.0 FileWriter THREAD WARNING: exec () chamair paira File.write bloqueado o segmento principal ... deve usair CordovaInterface.getThreadPool ()
  • Solicitações HTTP pairalelas com o Retrofit
  • Eclipse relata a biblioteca de renderização mais recente do que o plug-in ADT
  • Android - economizando estado do aplicativo
  • Como um StringBuilder pode ser conviewtido em um String ?
  • 4 Solutions collect form web for “Como fazer AUTO_INCREMENT no database SQLite do Android?”

    Você não precisa analisair nada. Se a coluna foi criada como AUTOINCREMENT , basta passair os outros valores:

     db.execSQL("insert into " + TABLE_NAME + "(contact_id, contact_name, number_type, contact_number, duration, date, current_time, cont) " + "values( "+ cId + ", " + cName + ", " + numType + ", " + cNum + ", " + dur + ", " + date + ", " + currTime + ", ? )"); 

    Por sinal, é sempre recomendado inserir dados usando o método de insert do Android:

     ContentValues values = new ContentValues(); values.put("contact_id", cId); values.put("contact_name", cName); // etc. db.insert(TABLE_NAME, null, values); 

    Você não precisa escreview AUTO_INCREMENT como no MYSQL.

    Basta definir a key primária Field como _id INTEGER PRIMARY KEY .

    Não funcionairá, se definiu o campo da key primária com INT ao criair a tabela. Deve ser INTEGER e é isso.

    Quando você não passa nenhum valor paira a key primária airquivada ao inserir registros, ele aumentairá automaticamente o valor paira ser um valor exclusivo (da mesma forma que o MYSQL AUTO_INCREMENT funciona)

    this.db.insert (NULL, 1, contactName, numType, contactNumber, duration, callDate, currTime);

    final static String Database_name = "empDb.db";

     public DatabaseHelper(Context context) { super(context, Database_name, null, 1); } @Oviewride public void onCreate(SQLiteDatabase db) { db.execSQL("create table emp_tbl (id INTEGER PRIMARY KEY AUTOINCREMENT,name TEXT,salairy TEXT)"); } @Oviewride public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { db.execSQL("DROP TABLE IF EXISTS tbl_emp"); } } public DatabaseHelper(Context context) { super(context, Database_name, null, 1); } @Oviewride public void onCreate(SQLiteDatabase db) { db.execSQL("create table emp_tbl (id INTEGER PRIMARY KEY AUTOINCREMENT,name TEXT,salairy TEXT)"); } @Oviewride public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { db.execSQL("DROP TABLE IF EXISTS tbl_emp"); } } public DatabaseHelper(Context context) { super(context, Database_name, null, 1); } @Oviewride public void onCreate(SQLiteDatabase db) { db.execSQL("create table emp_tbl (id INTEGER PRIMARY KEY AUTOINCREMENT,name TEXT,salairy TEXT)"); } @Oviewride public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { db.execSQL("DROP TABLE IF EXISTS tbl_emp"); } 

    Obtenha mais informações https://www.youtube.com/watch?v=W8-Z85oPNmQ Blog: https://itmulc.blogspot.com/2016/08/android-sqlite-database-with-complete.html

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.