Так им пытаются построить метод поиска для моей андроид приложения и я держать работает в этой ошибкиSQLite запросов Exception Android Studio Синтаксис Код ошибки 1
android.database.sqlite.SQLiteException: near "Prefect": syntax error (code 1):
while compiling: SELECT * FROM Person WHERE name = Ford Prefect
Это метод я есть, что выполнение запроса
public Cursor findUser(String uName)
{
Cursor res = myDatabase.query("Person WHERE name = "+uName+"",
null,null,null,null,null,null);
return res;
}
И струнный uName приходит от этого метода
public void onClick(View v)
{
EditText uNameField = (EditText)findViewById(R.id.editText);
String userName=uNameField.getText().toString();
switch (v.getId())
{
case R.id.button:
Intent myIntent = new Intent(FindUser.this,
Results.class);
myIntent.putExtra("uName", userName);
startActivity(myIntent);
break;
}
}
Может кто-нибудь помочь с моим im получить эту ошибку ?? все кажется прекрасным, я просто не могу понять, почему он останавливается на фамилии. Но имена пользователей правильно отформатированы так, как «Форд Префект»
Вам нужны цитаты вокруг строк: '.... WHERE name = 'Ford Prefect''. BTW использовать Подготовленные заявления - они справляются с этим для вас. –
Я уже не сталкивался с этим раньше, но, глядя кратко, это будет что-то вроде этих строк .... 'SQLiteDatabase db = dbHelper.getWritableDatabase(); SQLiteStatement stmt = db.compileStatement ("SELECT * FROM Person WHERE uName =?"); stmt.bindString (1, "userName"); stmt.execute(); ' –
Да, это было бы именно то, что –