Я создаю страницу входа с SQLite, но она работает неправильно.Всякий раз, когда я запускаю свой проект, он не показывает никакой ошибки и успешно устанавливает apk, но часть запроса показывает ошибки в обоих запросах, и я не могу найти какую-либо ошибку в моих запросах.Я публикую класс помощника БД.пожалуйста, кто-нибудь направит меня, чтобы я мог найти ошибку и исправить ее.
package com.example.u.database;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import com.example.u.entities.Accounts;
public class AccountsDB extends SQLiteOpenHelper {
private static String dbName= "accountDB";
private static String tableName= "account";
private static String idColumn= "id";
private static String usernameColumn= "username";
private static String passwordColumn= "password";
private static String fullameColumn= "fullname";
private static String emailColumn= "email";
public AccountsDB(Context context){
super(context, dbName, null, 1);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("create table" + tableName + "(" +
idColumn + "integer primary key autoincrement," +
usernameColumn + "text, " +
passwordColumn + "text, " +
fullameColumn + "text," +
emailColumn + "text" +
")" );
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
onCreate(db);
}
public boolean create(Accounts accounts){
boolean result= true;
try {
SQLiteDatabase sqLiteDatabase = getWritableDatabase();
ContentValues contentValues= new ContentValues();
contentValues.put(usernameColumn, accounts.getUsername());
contentValues.put(passwordColumn, accounts.getPassword());
contentValues.put(fullameColumn, accounts.getFullname());
contentValues.put(emailColumn, accounts.getEmail());
result= sqLiteDatabase.insert(tableName, null, contentValues) > 0;
}catch (Exception e){
result= false;
}
return result;
}
public static Accounts login(String username, String password){
Accounts accounts= null;
try {
SQLiteDatabase sqLiteDatabase= getReadableDatabase();
Cursor cursor= sqLiteDatabase.rawQuery("select * from" + tableName +
"where username= ? and password = ?", new String[] {username, password});
if (cursor.moveToFirst()){
accounts= new Accounts();
accounts.setId(cursor.getInt(0));
accounts.setUsername(cursor.getString(1));
accounts.setPassword(cursor.getString(2));
accounts.setFullname(cursor.getString(3));
accounts.setEmail(cursor.getString(4));
}
}catch (Exception e){
accounts = null;
}
return accounts;
}
public Accounts checkUsername (String username){
Accounts accounts= null;
try {
SQLiteDatabase sqLiteDatabase= getReadableDatabase();
Cursor cursor= sqLiteDatabase.rawQuery("select * from" + tableName +
"where username= ?", new String[] {username});
if (cursor.moveToFirst()){
accounts= new Accounts();
accounts.setId(cursor.getInt(0));
accounts.setUsername(cursor.getString(1));
accounts.setPassword(cursor.getString(2));
accounts.setFullname(cursor.getString(3));
accounts.setEmail(cursor.getString(4));
}
}catch (Exception e){
accounts = null;
}
return accounts;
}
}
Пожалуйста, помогите мне найти ошибку в моем коде, чтобы я смог завершить свой проект