· 9 years ago · Nov 24, 2016, 11:10 PM
111-24 20:49:14.803 18215-18215/tiburski.rg.cadastrocarro E/SQLiteDatabase: Error inserting nome=ggggg modelo=ggggg placa=hhhh android.database.sqlite.SQLiteException: no such table: tbcarro (code 1): , while compiling: INSERT INTO tbcarro(nome,modelo,placa) VALUES (?,?,?) at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method) at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:887) at android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:498) at android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:588) at android.database.sqlite.SQLiteProgram.(SQLiteProgram.java:58) at android.database.sqlite.SQLiteStatement.(SQLiteStatement.java:31) at android.database.sqlite.SQLiteDatabase.insertWithOnConflict(SQLiteDatabase.java:1469) at android.database.sqlite.SQLiteDatabase.insert(SQLiteDatabase.java:1341)
2
3private static final String DB_NOME = "carro.db";
4private static final int DB_VERSAO = 4;
5
6private static final String TBL_CARRO = "tbcarro";
7private static final String COLUNA_ID = "_id";
8private static final String COLUNA_NOME = "nome";
9private static final String COLUNA_PLACA = "placa";
10private static final String COLUNA_MODELO = "modelo";
11
12public static final String[] COLUNAS = {COLUNA_ID, COLUNA_NOME, COLUNA_PLACA, COLUNA_MODELO};
13
14public static String criarTabela() {
15 String CREATE_TABLE = " CREATE TABLE IF NOT EXISTS "+ getTblCarro() +" ( "
16 + getColunaId() +" INTEGER PRIMARY KEY AUTOINCREMENT, "
17 + getColunaNome() +" VARCHAR NOT NULL, "
18 + getColunaPlaca() +" VARCHAR UNSIGNED NULL, "
19 + getColunaModelo() +" VARCHAR UNSIGNED NULL ); ";
20 return CREATE_TABLE;
21}
22
23
24
25public static String getDbNome() {
26 return DB_NOME;
27}
28
29public static int getDbVersao() {
30 return DB_VERSAO;
31}
32
33public static String getTblCarro() {
34 return TBL_CARRO;
35}
36
37public static String getColunaId() {
38 return COLUNA_ID;
39}
40
41public static String getColunaNome() {
42 return COLUNA_NOME;
43}
44
45public static String getColunaPlaca() {
46 return COLUNA_PLACA;
47}
48
49public static String getColunaModelo() {
50 return COLUNA_MODELO;
51}
52
53private SQLiteDatabase mDb;
54
55public DataSource(Context context) {
56 super(context, DataModal.getDbNome(), null, DataModal.getDbVersao());
57 mDb = this.getReadableDatabase();
58}
59
60@Override
61public void onCreate(SQLiteDatabase sqLiteDatabase) {
62 sqLiteDatabase.execSQL(DataModal.criarTabela());
63}
64
65@Override
66public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {
67 onCreate(sqLiteDatabase);
68}
69
70public static Persistencia getmInstance(Context context) {
71 if (mInstance == null) {
72 synchronized (Persistencia.class) {
73 if (mInstance == null) {
74 mInstance = new Persistencia(context);
75 mDb = context.openOrCreateDatabase(DataModal.getDbNome(), Context.MODE_PRIVATE, null);
76 }
77 }
78 }
79 return mInstance;
80}
81
82private Persistencia(Context context) {
83 this.mContext = context;
84}