java - 如何将 'where' mySQL 查询转换为方法语法?

标签 java android sql

我想编写一个 mySQL 读取查询:

    String query = "SELECT  * FROM " + MY_TABLE
            + "where phone=" + phone + "AND isBloacked =1";

如何将其转换为方法语法?

    Cursor cursor = getReadableDatabase().query(MY_TABLE,
            new String[] { "phone" }, "phone", new String[] {}, null, null,
            null);

最佳答案

您的第三个参数基本上是一个 WHERE 子句,只是没有单词 WHERE

public Cursor query (String table, String[] columns, 
    String selection, String[] selectionArgs, 
    String groupBy, String having, String orderBy, String limit)

从方法签名来看,selectionWHERE 子句,selectionArgs 允许您在字符串之外添加参数。

例如,对于您的查询,您可能需要执行以下操作:

Cursor cursor = getReadableDatabase().query(MY_TABLE,
        new String[] { "phone" }, 
        "phone = ? AND isBloacked = ?", new String[] { phone, "1" }, 
        null, null, null);

关于java - 如何将 'where' mySQL 查询转换为方法语法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27368418/

相关文章:

java - 在 ZonedDateTime 或 Instant 中将时分秒设置为 00

android - 将一个 TextView 拆分为多个相对于屏幕高度的 TextView

android - 如何找到图像的顶点(山)

mysql - 在 MySQL 上创建数据库,如何进行涉及赔率的查询

sql - 使用 Where 子句插入表

java - 当依赖项使用不同的日志记录时会发生什么?

java - 如何将内部没有可序列化字段的java对象序列化为字节数组并反序列化该数组以获得原始对象

java - 带有 Action 监听器的单选按钮

android - Flutter:升级Play商店的版本代码

java - 表 "places"没有名为 "smallDesc"的列