java - Android - 检查数据库中是否存在行

标签 java android sqlite

我创建了一种方法,应用程序可以检查数据库中是否存在数字:

    Cursor player = playerDatabase.rawQuery("select * from playerTable where playerNumber ="+number,null);
  try {
      if (player.getCount() >= 0) {
          player.close();
          return true;
      }
      else{
          return false;
      }
  }finally {
      if(player != null){
          player.close();
      }
  }

但问题是,这总是返回 true 吗?我以这种方式使用它的原因来自于 Stack Overflow 上之前的答案。 能够检查搜索查询是否返回行/检查该数字是否存在的最佳方法是什么?

最佳答案

这是查找行是否存在的最有效方法。

SELECT EXISTS(SELECT 1 FROM playerTable WHERE playerNumber="Here comes the player number");

如果表中存在有playerNumber的行,则返回1;如果表中没有行,则返回0。

关于java - Android - 检查数据库中是否存在行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50320676/

相关文章:

sqlite - SQLite.Interop.dll仅通过Debug版本复制

ios - SQLite 或 coredata 或其他

android - 如何获取源和目的地的经纬度?

java - 是否可以在运行时用 Java 实现接口(interface)?

java - 在 zk 中获取 sevletconfig 对象

java - 通过mac地址获取ip地址

android - 在哪里放置 uiautomator 测试

android - 菜单图标未显示在操作栏上

SQL 高效检查关联是否存在?

java - jpcap异常