現在、JavaでJSPページをコーディングしています。私が抱えている問題は、文字列CNIC
をCNICc
と比較することができないということです。私は基本的に同じCNIC(社会保障番号)で2つ以上のエントリを持っていないと比較しています。私はコーディングでそれほど良くはないので、問題がどんなものであるかを親切に精緻化する。Javaの文字列とSQLデータベースの文字列を比較できません
String uname=request.getParameter("UName");
String name=request.getParameter("Name");
String age=request.getParameter("Age");
String address=request.getParameter("Address");
String CNIC=request.getParameter("CNIC");
Class.forName("com.mysql.jdbc.Driver");
Connection c=DriverManager.getConnection("jdbc:mysql://localhost:3306/mysql1","root", "");
Statement s= c.createStatement();
PreparedStatement ps=c.prepareStatement("insert into hitchhikerdetails(Uname,Name,Age,Address,CNIC) values(?,?,?,?,?)");
ResultSet rs=s.executeQuery("select * from hitchhikerdetails");
ps.setString(1, uname);
ps.setString(2, name);
ps.setString(3, age);
ps.setString(4, address);
ps.setString(5, CNIC);
String CNICc;
rs.beforeFirst();
while(rs.next())
{
CNICc=rs.getString(5);
//out.println(CNIC);
//UNamec=rs.getString(1);
if(CNIC.equals(CNICc))
{
pageContext.forward("Hitchhiker-error.jsp");
}
else
{
ps.executeUpdate();
pageContext.forward("Hitchhiker-success-register.jsp");
}
}
%>
あなたはどのような問題に直面していますか? –
「CNIC」と「CNICc」を比較することはできません。 CNICcがDBからフェッチされている間、CNICはローカルストリングです。問題はコードの下部にあります。 whileループがどこにあるか。 –
あなたが比較できないことを意味しますか? 何か問題がありますか? またはコードは正常に実行されていますが、CNICとCNICcは決して一致しません。結果は常にfalseです。 –