· 8 years ago · Dec 19, 2017, 12:20 PM
1public class LivroBDHelper extends SQLiteOpenHelper {
2
3 private static final String DB_NAME = "livrosBD";
4 private static final int DB_VERSION = 1;
5 private static final String TABLE_NAME = "Livro";
6
7 private static final String TITULO_LIVRO = "titulo";
8 private static final String SERIE_LIVRO = "serie";
9 private static final String AUTOR_LIVRO = "autor";
10 private static final String ANO_LIVRO = "ano";
11 private static final String CAPA_LIVRO = "capa";
12 private final SQLiteDatabase database;
13
14 public LivroBDHelper(Context context) {
15 super(context, DB_NAME, null, DB_VERSION);
16
17 this.database = getWritableDatabase();
18 }
19
20 @Override
21 public void onCreate(SQLiteDatabase database) {
22 String createLivroTable = "CREATE TABLE " + TABLE_NAME +
23 "(id INTENGER PRIMARY KEY AUTOINCREMENT," +
24 TITULO_LIVRO + " TEXT NOT NULL," +
25 SERIE_LIVRO + " TEXT NOT NULL," +
26 AUTOR_LIVRO + " TEXT NOT NULL," +
27 ANO_LIVRO + " TEXT NOT NULL," +
28 CAPA_LIVRO + " INTENGER" + ")";
29 database.execSQL(createLivroTable);
30 }
31
32 @Override
33 public void onUpgrade(SQLiteDatabase database, int i, int i1) {
34 String sql = "DROP TABLE IF EXISTS " + TABLE_NAME;
35 database.execSQL(sql);
36 this.onCreate(database);
37 }
38
39 public Livro adicionarLivroBD(Livro livro) {
40 ContentValues values = new ContentValues();
41
42 values.put(TITULO_LIVRO, livro.getTitulo());
43 values.put(SERIE_LIVRO, livro.getSerie());
44 values.put(AUTOR_LIVRO, livro.getAutor());
45 values.put(ANO_LIVRO, livro.getAno());
46 values.put(CAPA_LIVRO, livro.getCapa());
47
48 long id = this.database.insert(TABLE_NAME, null,values);
49
50 if (id > -1)
51 {
52 System.out.println("--> INSERIR BD ID: "+ id);
53 livro.setIdLivro(id);
54 return livro;
55 }
56
57 return null;
58 }
59
60 public boolean editarLivroBD(Livro livro) {
61 ContentValues values = new ContentValues();
62
63 values.put(TITULO_LIVRO, livro.getTitulo());
64 values.put(SERIE_LIVRO, livro.getSerie());
65 values.put(AUTOR_LIVRO, livro.getAutor());
66 values.put(ANO_LIVRO, livro.getAno());
67 values.put(CAPA_LIVRO, livro.getCapa());
68
69 return this.database.update(TABLE_NAME, values, "id = ?", new String[]{"" + livro.getIdLivro()}) > 0;
70 }
71
72 public boolean removerLivroBD(long idLivro)
73 {
74 return (this.database.delete(TABLE_NAME,"id = ?", new String[]{"" + idLivro})) == 1;
75 }
76
77 public void removerAllLivrosBD()
78 {
79 this.database.delete(TABLE_NAME, null, null);
80 }
81
82 public ArrayList<Livro> getAllLivrosBD()
83 {
84 ArrayList<Livro> livros = new ArrayList<>();
85
86 String sql = "SELECT * FROM " + TABLE_NAME;
87
88 Cursor cursor = this.database.rawQuery(sql, null);
89
90 if(cursor.moveToFirst()){
91 do{
92 Livro auxLivro = new Livro(
93 cursor.getLong(0),
94 cursor.getString(1),
95 cursor.getString(2),
96 cursor.getString(3),
97 cursor.getString(4),
98 cursor.getString(5));
99
100 livros.add(auxLivro);
101
102 }while (cursor.moveToNext());
103 }
104 return livros;
105 }
106
107 public Livro getLivro(long id) {
108
109 String sql = "SELECT * FROM " + TABLE_NAME +" WHERE ID = " + id;
110
111 Cursor cursor = this.database.rawQuery(sql, null);
112
113 Livro auxLivro = new Livro(
114 id,
115 cursor.getString(1),
116 cursor.getString(2),
117 cursor.getString(3),
118 cursor.getString(4),
119 cursor.getString(5));
120
121 return auxLivro;
122 }
123}