}//名人验证
 public int mingren(String name){
 int flag=0;
 try{
 getConn();
 rs=s.executeQuery("select * from blog_users where username='"+name+"'");
 String fam=null;
while(rs.next())
{fam=rs.getString("famouse");}
if(fam=="N"){fam="Y";}
 flag+=s.executeUpdate("update blog_users set famouse='"+fam+"' where username='"+name+"'");
 closeDB();
}catch(Exception e){e.printStackTrace();}
 return flag;
}
}
//以上程序是想改变数据库中表“blog_users”中“famouse”列的初始值N,用Y来代替;<%@ page language="java" import="java.util.*,dao.*,java.sql.*" pageEncoding="gbk"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>My JSP 'yzmr.jsp' starting page</title>
    
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">    
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->  </head>
  
  <body>
  <%
  request.setCharacterEncoding("gbk");
  String name=request.getParameter("username");
    int flag=0;
      DataBean obj=new DataBean(); 
      flag=obj.mingren(name);
  if(flag==1){response.sendRedirect("mrsucc.jsp");}
  else{response.sendRedirect("mrerror.jsp");} 
   %>
  </body>
</html>
//这段程序则是用来判断“famouse”列中的数据是否成功更改而做出回应的页面;但在实际的运用中,却发现数据库中的列“famouse”中的初始值未发生改变,但页面却转向了mrsucc.jsp页面,由于是刚学jsp,至今未弄清原因,所以请各位大哥帮帮忙!

解决方案 »

  1.   

    public int mingren(String name){
     int flag=0;
     try{
    getConn();
    flag=s.executeUpdate("update blog_users set famouse='Y' where username='"+name+"' and famouse='N'");
    closeDB();
    }catch(Exception e){e.printStackTrace();}
     return flag;
    }
    }
    //以上程序是想改变数据库中表“blog_users”中“famouse”列的初始值N,用Y来代替;
      

  2.   

    public int mingren(String name){
     int flag=0;
     try{
    getConn();
    flag=s.executeUpdate("update blog_users set famouse='Y' where username='"+name+"' and famouse='N'");
    closeDB();
    }catch(Exception e){e.printStackTrace();}
     return flag;
    }
    }
    //以上程序是想改变数据库中表“blog_users”中“famouse”列的初始值N,用Y来代替;
      

  3.   

    public int mingren(String name)
    { int flag=0;
     try{
    getConn();
    //数据的username是否只有一个唯一的名字,,
    rs=s.executeQuery("select * from blog_users where username='"+name+"'");
    String fam=null;
    while(rs.next()) 
    {fam=rs.getString("famouse");}if(fam.trim().tolowercase().equals("N"))
    {
         fam="Y";
    }
    //if(fam=="N"){fam="Y";}
    flag+=s.executeUpdate("update blog_users set famouse='"+fam+"' where username='"+name+"'");
    closeDB();
    }catch(Exception e){e.printStackTrace();}
     return flag;
    }
    }
      

  4.   

    public int mingren(String name)
    { int flag=0;
     try{
    getConn();
    //数据的username是否只有一个唯一的名字,,
    rs=s.executeQuery("select * from blog_users where username='"+name+"'");
    String fam=null;
    while(rs.next()) 
    {fam=rs.getString("famouse");}
    //去空格,转换在小写格式,,
    if(fam.trim().tolowercase().equals("n"))
    {
         fam="Y";
    }
    //if(fam=="N"){fam="Y";}
    flag+=s.executeUpdate("update blog_users set famouse='"+fam+"' where username='"+name+"'");
    closeDB();
    }catch(Exception e){e.printStackTrace();}
     return flag;
    }
    }