java中查询数据库中的一个值,而且想返回那个值的数据类型,怎么查

首先这是要查的表格:

这是我表格的属性,字段,数据类型。

我从键盘输入一个int型的数字,然后在数据库中查找。
我先在java中输入String sql = "SELECT *FROM qquser WHERE qqNum = 6400670";
然后从数据库中肯定调出来的是这样的

然后我需要把qqNum:6400670这一个int型的数字挑出来,怎么办。

以下是我的部分代码,问题可能是在第一个if的判断中不知道如何写,好像要写rs.什么,但是rs.getString是返回的String类型,和int不能比较,所以有了疑问
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Scanner;

public class Login {

public boolean loginMethod(Statement stmt){
LoginDate logindate = new LoginDate();
System.out.println("请输入您的QQ号码");
Scanner scan = new Scanner(System.in);
logindate.loginqq = scan.nextInt();
scan.nextLine();
//连接数据库查找是否有这一条
String sql = "SELECT *FROM qquser WHERE qqNum = 6400670";//一条查找的句子,可以把user里面的QQ找出来
ResultSet rs = null;
rs = stmt.executeQuery(sql);

if(){//账号存在密码正确,返回true
return true;
}
if(){//账号不存在或者密码不对,返回false
return false;
}

}
}

class LoginDate{
static int loginqq;
static char loginkey;
}

讲的不是很清楚啊,
我猜你的意思是要做登陆验证是吧。
那你就把QQ号和密码写在一个SQL里判断就好了。

boolean validate = false;
PreparedStatement stmt = conn.prepareStatement("SELECT * FROM qquser WHERE QQNUM= ? AND QQKEY = ? ");
stmt.setString(1,loginData.getLoginqq());
stmt.setString(2,loginData.getLoginkey());
ResultSet rs = stmt.executeQuery();
if(rs.next()){//账号存在密码正确,返回true
validate = true;
}
rs.close();
stmt.clost();
return validate;
温馨提示:内容为网友见解,仅供参考
第1个回答  2015-02-17
这个设置貌似不太合理吧 难道qqNum不应该设置为只能是数字的字符串吗 int型个人感觉不合理追问

qqNum反正都是纯数字,用字符串的话 合适吗,如果你在输入QQ的时候加入了英文字母不太好吧,浪费了一些判断,还不如直接用int型的,scan的时候就可以限制住

相似回答