Простая страница регистрации, на которой имя пользователя, пароль и пароль подтверждают эти три текстовых поля. Я собираюсь создать базу данных, имеющую таблицу из трех атрибутов id, name и password, где id является первичным ключом, имя, которое мы получаем из поля ввода имени пользователя динамически, и пароль, который мы получаем из текстового поля пароля динамически. Но проблема в том, что база данных создана но значения, заданные динамически, не сохраняются/не обновляются в таблице. Я новичок в андроиде, и я использовал интернет-ресурсы для написания кода, но до сих пор я не понимаю на этом этапе. Заранее спасибо..!!База данных создана! Но таблица не получает значений
MainActivity.java :
public class MainActivity extends Activity
{
EditText editTextUserName,editTextPassword,editTextConfirmPassword;
Button btnCreateAccount;
DbHelper myHelper;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editTextUserName=(EditText)findViewById(R.id.editTextUserName);
editTextPassword=(EditText)findViewById(R.id.editTextPassword);
editTextConfirmPassword=(EditText)findViewById(R.id.editTextConfirmPassword);
myHelper = new DbHelper(this, "", null, 1);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
public void newName(View v) {
// onClick function when account create button is clicked
String userName=editTextUserName.getText().toString();
String password=editTextPassword.getText().toString();
Bus bus = new Bus(userName, password);
myHelper.insertEntry(bus);
String confirmPassword=editTextConfirmPassword.getText().toString();
bus = new Bus(userName, password);
myHelper.insertEntry(bus);
editTextUserName.setText("");
editTextPassword.setText("");
editTextConfirmPassword.setText("");
Toast.makeText(getApplicationContext(), "Account Successfully Created ", Toast.LENGTH_LONG).show();
}
}
public void count (View view) {
//onClick function when no of tuples in the table button is clicked
int a = myHelper.getNamesCount();
String b = Integer.toString(a);
editTextUserName.setText(b);
}
@Override
protected void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
myHelper.close();
}
}
и есть другой помощник базы данных класс называется DbHelper.java, код:
DbHelper.java :
public class DbHelper extends SQLiteOpenHelper {
private static final int DATABASE_VERSION = 2;
private static final String DATABASE_NAME = "finalProjectDB.db";
private static final String TABLE_LOGIN = "Table1";
public static final String COLUMN_ID1 = "id";
public static final String COLUMN_NAME1 = "name";
public static final String COLUMN_PASSWORD1 = "password";
public DbHelper(Context context, String name,
CursorFactory factory, int version) {
super(context, DATABASE_NAME, factory, DATABASE_VERSION);
}
public SQLiteDatabase db;
@Override
public void onCreate(SQLiteDatabase db) {
String CREATE_NAMES_TABLE = "CREATE TABLE "+TABLE_LOGIN+"("+COLUMN_ID1+" INTEGER PRIMARY KEY,"+COLUMN_NAME1+" TEXT,"+COLUMN_PASSWORD1+" TEXT)";
db.execSQL(CREATE_NAMES_TABLE);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS "+TABLE_LOGIN);
onCreate(db);
}
public void insertEntry(Bus bus)
{
ContentValues newValues = new ContentValues();
newValues.put("COLUMN_NAME1",bus.getName());
newValues.put("COLUMN_PASSWORD1",bus.getPassword());
SQLiteDatabase db = this.getWritableDatabase();
db.insert("TABLE_LOGIN", null, newValues);
///Toast.makeText(context, "Reminder Is Successfully Saved", Toast.LENGTH_LONG).show();
db.close();
}
public int getNamesCount(){
String countQuery = "SELECT * FROM "+TABLE_LOGIN;
SQLiteDatabase db = this.getReadableDatabase();
Cursor cursor = db.rawQuery(countQuery, null);
int count = cursor.getCount();
return count;
}
}
Наконец, Bus.java файл:
Bus.java :
public class Bus {
private int _id;
private String _name;
private String _password;
public Bus(){
}
public Bus(int id, String name, String password){
this._id = id;
this._name = name;
this._password = password;
}
public Bus(String name, String password){
this._name = name;
this._password = password;
}
public void setID(int id){
this._id = id;
}
public int getID(){
return this._id;
}
public void setName(String name) {
this._name = name;
}
public String getName() {
return this._name;
}
public void setPassword(String password) {
this._password = password;
}
public String getPassword() {
return this._password;
}
}
жаль, что я вас не понял. Что вы подразумеваете под своим постоянным? –