java中查询数据库中的一个值,而且想返回那个值的数据类型,怎么查
首先这是要查的表格:这是我表格的属性,字段,数据类型。我从键盘输入一个int型的数字,然后在数据库中查找。我先在java中输入Stringsql="SELECT*FROM...
首先这是要查的表格:
这是我表格的属性,字段,数据类型。
我从键盘输入一个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;
} 展开
这是我表格的属性,字段,数据类型。
我从键盘输入一个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;
} 展开
2个回答
展开全部
讲的不是很清楚啊,
我猜你的意思是要做登陆验证是吧。
那你就把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;
我猜你的意思是要做登陆验证是吧。
那你就把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;
2015-02-17
展开全部
这个设置貌似不太合理吧 难道qqNum不应该设置为只能是数字的字符串吗 int型个人感觉不合理
追问
qqNum反正都是纯数字,用字符串的话 合适吗,如果你在输入QQ的时候加入了英文字母不太好吧,浪费了一些判断,还不如直接用int型的,scan的时候就可以限制住
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询