Как отформатировать предложение WHERE и '?'в запросе SQLite? - PullRequest
5 голосов
/ 11 марта 2011

Я пытаюсь использовать встроенные функции SQLite, и я не уверен, как отформатировать запрос.Как мне отформатировать предложение WHERE и ?, которые могут туда войти:

column [] = {"name"};
selectionArg [] = {"john};
Select name from mytable where id = "john"

db.query(mytable, column, id = ?, selectionArg, null,null,null);

Я не там, где я могу проверить это, но я пытаюсь сделать это правильно,первый раз.Я не уверен, должен ли ? быть "?" или id = + "?" и так далее.Я не могу найти примеры этого формата.

Ответы [ 2 ]

19 голосов
/ 11 марта 2011

Для запроса:

select name from mytable where id = "john"

используйте

(SQliteDatabase) db.query(
    "mytable" /* table */,
    new String[] { "name" } /* columns */,
    "id = ?" /* where or selection */,
    new String[] { "john" } /* selectionArgs i.e. value to replace ? */,
    null /* groupBy */,
    null /* having */,
    null /* orderBy */
);
2 голосов
/ 11 марта 2011

Вы не можете использовать кавычки вокруг вопросительных знаков

пример:

db.query(
            true,
            "tablename",
            new String[] {
                "col1",
                "col2"
            },
            "col1 = ?",
            new String[]{ "value" },
            null,
            null,
            null,
            null
        );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...