Quando faço a inserção de Aluno no banco o Id sempre permanece com 0 (Zero). Abaixo o AlunoDAO e a Classe Aluno. Alguem pode de ajudar.
AlunoDAO package br.com.evb.agenda.DAO;
import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper;
import java.util.ArrayList; import java.util.List;
import br.com.evb.agenda.modelo.Aluno;
/* Created by Edgar on 30/05/2017. */
public class AlunoDAO extends SQLiteOpenHelper{
public AlunoDAO(Context context) { super(context, "Agenda", null, 1); }
@Override public void onCreate(SQLiteDatabase db) { String sql = "CREATE TABLE Alunos (id INTEGER PRIMARY KEY, nome TEXT NOT NULL, endereco TEXT, telefone TEXT, site TEXT, nota REAL);"; db.execSQL(sql); }
@Override public void onUpgrade(SQLiteDatabase db, int v1, int v2) { String sql = "DROP TABLE Alunos;"; db.execSQL(sql); onCreate(db); }
public void insere(Aluno aluno) {
SQLiteDatabase db = getWritableDatabase(); ContentValues dados = new ContentValues(); dados.put("nome", aluno.getNome()); dados.put("endereco", aluno.getEndereco()); dados.put("telefone", aluno.getTelefone()); dados.put("site", aluno.getSite()); dados.put("nota", aluno.getNota());
db.insert ("Alunos", null, dados);
}
public List buscaAluno(String sql ) { /String sql = "SELECT FROM Alunos";*/ SQLiteDatabase db = getReadableDatabase(); Cursor c = db.rawQuery(sql, null); List alunos = new ArrayList(); while (c.moveToNext()) { Aluno aluno = new Aluno (); aluno.setId(c.getLong(c.getColumnIndex("nome"))); aluno.setNome(c.getString(c.getColumnIndex("nome"))); aluno.setEndereco(c.getString(c.getColumnIndex("endereco"))); aluno.setTelefone(c.getString(c.getColumnIndex("telefone"))); aluno.setSite(c.getString(c.getColumnIndex("site"))); aluno.setNota(c.getDouble(c.getColumnIndex("nota")));
alunos.add(aluno); } c.close(); return alunos; }
public void deleta(Aluno aluno) { SQLiteDatabase db = getWritableDatabase(); String[] params = {aluno.getId().toString()}; db.delete("Alunos", "id = ?", params); } }
Classe Aluno package br.com.evb.agenda.modelo;
/* Created by Edgar on 29/05/2017. */
public class Aluno { private Long id; private String nome; private String endereco; private String telefone; private String site; private double nota;
public Long getId() { return id; }
public void setId(long id) { this.id = id; }
public String getNome() { return nome; }
public void setNome(String nome) { this.nome = nome; }
public String getEndereco() { return endereco; }
public void setEndereco(String endereco) { this.endereco = endereco; }
public String getTelefone() { return telefone; }
public void setTelefone(String telefone) { this.telefone = telefone; }
public String getSite() { return site; }
public void setSite(String site) { this.site = site; }
public double getNota() { return nota; }
public void setNota(double nota) { this.nota = nota; }
@Override public String toString() { return getId() + " - " + getNome(); } }