Androidスタジオ、あまり使われていないので、私はまだ頭を抱えています。EditText入力に一致するカーソルの結果
ユーザーの登録情報を格納するローカルデータベースを作成しましたが、問題なく動作しています。 ID /名前/電子メール/パスワードフィールドを取得しました。
今私はログイン機能を整理しようとしています。これは、私が苦労しているところです。カーソルを初めて使用するからです。単純に、電子メールとパスワードのフィールドを順番に調べ、一致したものを見つけ、ユーザーをログインさせる必要があります。私の現在の内容はDatabaseHelperClass
です。
public boolean passwordOk(String Editemail, String Editpassword) {
SQLiteDatabase db = this.getReadableDatabase();
Cursor res = db.rawQuery("select * from " + TABLE_NAME + " where " + COL_3 + "="+ Editemail + " and " + COL_4 + "=" + Editpassword + "'", null);
return (res.getCount() == 1);
}
これは私のMainActivityで使用するものです。
public void passwordOK(){
loginB.setOnClickListener(
new View.OnClickListener() {
public void onClick(View v) {
boolean isInsert = myD.passwordOk(editEmail.getText().toString(), editPassword.getText().toString());
if (isInsert == true)
Toast.makeText(MainActivity.this, "You Have Successfully Logged in", Toast.LENGTH_LONG).show();
else Toast.makeText(MainActivity.this, "Oops! Try Again", Toast.LENGTH_LONG).show();
}
}
);
}
ここで私が投げているエラーは、アプリケーションを閉じます。
3月31日16:11:37.351 26018から26018/com.example.onein.jobgosite E/AndroidRuntime:致命的な例外:メイン プロセス:com.example.onein.jobgosite、PID:26018 アンドロイド.database.sqlite.SQLiteException:認識できないトークン: "'"(コード 1)、コンパイル中:選択*行うと PASSWORD = DOH = EMAIL USER_INFOから' android.database.sqlite.SQLiteConnection.nativePrepareStatementで(ネイティブ メソッド) at android.database.sqlite.SQLiteConnectio n.acquirePreparedStatement android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:588)で android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:498)で(SQLiteConnection.java:887) でandroid.database.sqlite.SQLiteProgram。(SQLiteProgram.java:58) android.database.sqlite.SQLiteQueryた。(SQLiteQuery.java:37) android.database.sqlite.SQLiteDirectCursorDriver.queryで(SQLiteDirectCursorDriver.java:44 ) at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1316) でandroid.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1255) でcom.example.onein.jobgosite.DatabaseHelperClass.passwordOk(DatabaseHelperClass.java:62) com.example.onein.jobgositeました。 MainActivity $ 2.onClick(MainActivity.java:67) android.view.View.performClick(View.java:5198) (android.view.View)$ PerformClick.run(View.java:21147) はandroid.osです。 .Handler.handleCallback(Handler.java:739) とandroid.os.Handler.dispatchMessage(Handler.java:95) とandroid.os.Looper.loop(Looper.java:148) android.app.ActivityThread.main(ActivityThread.java:5417) at java.lang.reflect.Method.invoke(ネイティブメソッド) at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java :726) at com.android.internal.os.ZygoteInit.main(ZygoteInit。Javaの:616)
すべてのヘルプは感謝
、それは愚かな何かとそれを動作させるために単純なものは、おそらくですが、何らかの理由で、私はカーソルがどのように機能するかを可視化し、それがどのように働いてもらうのに苦労しています。ありがとう!
お返事ありがとうございます。まだエラーがスローされています。私のメインクラスで私に致命的な例外を与えます。パスワードOKにアクセスしていますか? – gumtrees
ああ、それは動作します。あなたは私に何時間もの愚かな編集をしてくれました。本当にありがとうございました。それは何かばかげたことを知っていた。 – gumtrees