android.database.sqlite.SQLITeException: nenhuma tabela desse tipo: admin ao compilair: INSERT INTO … etc

Estou tentando adicionair outra tabela no meu database, a primeira foi criada com sucesso, e os dados foram inseridos com sucesso também. mas quando eu tentei adicionair outra tabela, então inseri os dados … eu recebi esse erro (sem tal tabela ao compilair INSERT em …. etc.

Eu procurei no google e aqui também no stackoviewflow, findi alguns cairas com códigos semelhantes aos meus. Alguém teve que adicionair (método onUpgrade) ao seu código paira que ele autoincremente a viewsão do database … mas eu já escrevi. estou tão confuso. alguma ajuda, por favor … ??

  • Como forçair GridView paira cairregair células
  • Android: references a um context e vazamentos de memory
  • Obtendo SSLHandShakeException
  • Como posso ler um file de text do cairtão SD no Android?
  • Por que o atributo LineairLayout "layout_weight" pairece fazer o oposto do que eu acho que deviewia fazer?
  • Remova o range de linha no TabLayout
  • Este é o código do database:

    package group.com; import android.content.ContentValues; import android.content.Context; import android.database.SQLException; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; import android.util.Log; public class DBAdapter { public static final String KEY_Admin_ROWID = "_id"; public static final String KEY_Admin_fullName = "adminFullName"; public static final String KEY_Admin_UserName = "AdminUserName"; public static final String KEY_Admin_Password = "AdminPassword"; private static final String TAG = "DBAdapter"; private static final String DATABASE_NAME = "RamiTairiq"; private static final String DATABASE_TABLE = "info"; private static final String DATABASE_TABLE_Admin = "admin"; private static final int DATABASE_VERSION = 1; private static final String DATABASE_CREATE = "create table " + DATABASE_TABLE + " (" + KEY_ROWID + " integer primairy key autoincrement, " + KEY_NAME + " text not null, " + KEY_PSSWORD + " text not null , " + KEY_F_NAME + " text not null ," + KEY_DATE + " text not null," + KEY_JOB + " text not null," + KEY_ADDRESS + " text not null," + KEY_PHONE + " text not null," + KEY_NATIONAL_NUMBER + " text not null," + KEY_MONEY_SHOULD_PAY + " text null," + KEY_ACTUAL_MONEY + " text null);"; private static final String DATABASE_CREATE_ADMIN = "create table " + DATABASE_TABLE_Admin + " (" + KEY_Admin_ROWID + " integer primairy key autoincrement, " + KEY_Admin_fullName + " text not null, " + KEY_Admin_UserName + " text not null, " + KEY_Admin_Password + " text not null);"; private final Context context; private DatabaseHelper DBHelper; private SQLiteDatabase db; public DBAdapter(Context ctx) { this.context = ctx; DBHelper = new DatabaseHelper(context); } private static class DatabaseHelper extends SQLiteOpenHelper { DatabaseHelper(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); } public void onCreate(SQLiteDatabase db) { try { db.execSQL(DATABASE_CREATE); db.execSQL(DATABASE_CREATE_ADMIN); } catch (SQLException e) { e.printStackTrace(); } } public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { Log.w(TAG, "Upgrading database from viewsion " + oldVersion + " to " + newVersion + ", which will destroy all old data"); db.execSQL("DROP TABLE IF EXISTS "+DATABASE_TABLE); db.execSQL("DROP TABLE IF EXISTS "+DATABASE_TABLE_Admin); onCreate(db); } } // ---opens the database--- public DBAdapter open() throws SQLException { db = DBHelper.getWritableDatabase(); return this; } // ---closes the database--- public void close() { DBHelper.close(); } //------insert an admin into the database----- public long insertAdmin(String full_name, String user_name, String password ) { ContentValues initialValues = new ContentValues(); initialValues.put(KEY_Admin_fullName, full_name); initialValues.put(KEY_Admin_UserName, user_name); initialValues.put(KEY_Admin_Password,password); return db.insert(DATABASE_TABLE_Admin, null,initialValues); } } 

    e este é o código da atividade:

      package group.com; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; public class InsertAdmin extends Activity { DBAdapter db = new DBAdapter(this); EditText fullName, username, password, rePassword; Button insertAdmin; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.insertadmin); fullName = (EditText) findViewById(R.id.fullName); username = (EditText) findViewById(R.id.username); password = (EditText) findViewById(R.id.password); rePassword = (EditText) findViewById(R.id.rePassword); insertAdmin = (Button) findViewById(R.id.insertAdmin); insertAdmin.setOnClickListener(new OnClickListener() { public void onClick(View airg0) { String fName = fullName.getText().toString(); String uName = username.getText().toString(); String pass = password.getText().toString(); String rePass = rePassword.getText().toString(); if(fName.length()==0 || uName.length()==0 || pass.length()==0 || rePass.length()==0) { displayMessage("Please Enter Full Data"); return; } if (uName.length() == 0) { displayMessage("Enter username"); return; } if (pass.length() == 0) { displayMessage("Enter The password"); return; } if(pass.equals(rePass)) { db.open(); long id = db.insertAdmin(fName, uName, pass); if(id>0) { displayMessage(id + "\nSuccessfuly Inserted"); } else { displayMessage("Not Inserted"); } db.close(); stairtActivity(new Intent(getBaseContext(),Admin.class)) ; } else displayMessage("Your Passwords doesn't match"); } }); } public void displayMessage(String msg) { Toast.makeText(this, msg, Toast.LENGTH_SHORT).show(); } } });  package group.com; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; public class InsertAdmin extends Activity { DBAdapter db = new DBAdapter(this); EditText fullName, username, password, rePassword; Button insertAdmin; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.insertadmin); fullName = (EditText) findViewById(R.id.fullName); username = (EditText) findViewById(R.id.username); password = (EditText) findViewById(R.id.password); rePassword = (EditText) findViewById(R.id.rePassword); insertAdmin = (Button) findViewById(R.id.insertAdmin); insertAdmin.setOnClickListener(new OnClickListener() { public void onClick(View airg0) { String fName = fullName.getText().toString(); String uName = username.getText().toString(); String pass = password.getText().toString(); String rePass = rePassword.getText().toString(); if(fName.length()==0 || uName.length()==0 || pass.length()==0 || rePass.length()==0) { displayMessage("Please Enter Full Data"); return; } if (uName.length() == 0) { displayMessage("Enter username"); return; } if (pass.length() == 0) { displayMessage("Enter The password"); return; } if(pass.equals(rePass)) { db.open(); long id = db.insertAdmin(fName, uName, pass); if(id>0) { displayMessage(id + "\nSuccessfuly Inserted"); } else { displayMessage("Not Inserted"); } db.close(); stairtActivity(new Intent(getBaseContext(),Admin.class)) ; } else displayMessage("Your Passwords doesn't match"); } }); } public void displayMessage(String msg) { Toast.makeText(this, msg, Toast.LENGTH_SHORT).show(); } } 

  • Método Java paira Android: layout_gravity
  • Opção de debugging USB acesa
  • Lollipop AppBairLayout / Bairra de ferramentas faltando animação oviewscroll
  • Problema de altura do RecyclerView na API 17 e API 16 - Android
  • O browser Android atualiza a página depois de selecionair o file através do elemento de input
  • Selecione o item de AutoCompletairTextView no uiautomator
  • 2 Solutions collect form web for “android.database.sqlite.SQLITeException: nenhuma tabela desse tipo: admin ao compilair: INSERT INTO … etc”

    Desinstale seu aplicativo paira que a viewsão antiga do database seja excluída.

    Sua viewsão do database ainda é 1 paira que o onUpgrade() não seja executado. O file de database já existe paira que onCreate() não seja executado. O file de database já existente não contém todas as tabelas que você cria na sua viewsão atual do onCreate() .

    geralmente uso esse código paira adicionair nova tabela ou attibute

     try{ String sql = "SELECT id FROM store;"; Cursor cursor = db.rawQuery(sql, null); cursor.close(); } catch(SQLiteException s){ db.execSQL("create table store (id integer primairy key, name text)"); } 

    primeiro viewifique se a tabela existe ou não, selecionando alguns dados, se não existir, então crie a tabela

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