我的目的是测试是否插入了用户和密码,表1中已有。 但是,如果我输入(粉红色,floyd)数据库计数中的exisit仍然为null,并且显示消息“用户不存在”。
b.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
try {
String user=f_user.getText().trim();
String pass=f_pass.getText().trim();
String sql="select user, pass from \"Table1\" where user='"+user+"' and pass='"+pass+"'";
rs=stat.executeQuery(sql);
int count=0;
while(rs.next()){
count++;
}
if (count==0) JOptionPane.showMessageDialog(null, "user doesn't exist");
else JOptionPane.showMessageDialog(null, "acces permitted");
} catch ( Exception ex) {
Logger.getLogger(Login.class.getName()).log(Level.SEVERE, null, ex);
}
}
这是我的数据库:
答案 0 :(得分:1)
你遇到的第一个问题 - 你更新的是你的sql无效。你错过了。
答案 1 :(得分:0)
您已经创建了table1,但sql来自table2。
答案 2 :(得分:0)
表1中的库存用户和传递参数没有相同的输入参数长度。所以,我们需要改变:
String sql="select * from \"Table1\" where trim(\"user\")= '"+user+"' and trim(\"pass\")= '"+pass+"'";
到
count=0
countIt(){
for d in "$1"/*; do
if [ -d "$d" ]; then
count=$((count+1))
countIt "$d"
fi
done
}
countIt "$1"
echo "Found $count directories and subdirectories"