*
Моя проблема
Недавно я запустил часть своего Java-кода [Open Helper] через android studio, и он выдал следующую ошибку:
У меня есть страница входа в систему с android (java-код), и только моя проблема, когда время, которое должно быть паролем, просто введенная строка, будет истинным. но если был поставлен числовой пароль, не будет истиной.
код SqlOpenHelper
package com.example.root.sql2;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.support.annotation.Nullable;
public class db extends SQLiteOpenHelper {
public db(Context context) {
super(context, "login.db", null, 1);
}
@Override
public void onCreate(SQLiteDatabase sqLiteDatabase) {
sqLiteDatabase.execSQL("CREATE TABLE USER(ID INTEGER PRIMARY KEY AUTOINCREMENT ,NAME TEXT, PASSWORD TEXT)");
}
@Override
public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {
sqLiteDatabase.execSQL("DROP TABLE IF EXISTS USER");
onCreate(sqLiteDatabase);
}
public boolean insert (String name , String password){
SQLiteDatabase db = getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put("NAME", name);
contentValues.put("PASSWORD", password);
long ins = db.insert("USER","",contentValues);
if (ins == -1) return false;
else return true;
}
public boolean login(String name , String password){
SQLiteDatabase db = getReadableDatabase();
Cursor cursor = db.rawQuery("SELECT * FROM USER WHERE NAME=? AND PASSWORD=?", new String[] {name , password});
cursor.moveToFirst();
if (cursor.getCount()>0) return false;
else return true;
}
}
«пароль», если была строка, пароль тогда истинно, но «пароль», если была строка, пароль (числовой) тогда не будет истиной ...
*