你是不是有这样的语句
ResultSet rs=conn.execute(sql);
其中sql="insert into......"或者是“update ....”
改成conn.execute(sql);
if(phone.trim().equals("")) 这一句是判断phone是否为空

解决方案 »

  1.   

    ResultSet rs=conn.execute(sql);与conn.execute(sql);他俩有什么区别吗?
    我的是:
    Statement stmt=db.connect();
    String sqlinsert;
    sqlinsert="insert into register(logname,realname) VALUES('a','2')";
    stmt.execute(sqlinsert);
      

  2.   

    当然有区别了,ResultSet rs=conn.execute(sql);是返回一个结果集,而且这句用的是错误的,要返回一个结果集,通常用executeQuery()方法;conn.execute(sql);指的是执行一个sql语句,它返回的通常是一个整数,返回值是sql语句影响的行数。
      

  3.   

    phone=request.getParameter("phone");    //这句对的
    if(phone.trim().equals(""))     // 这一句是什么意思?
    {
    phone=null;
    }
    提示错误:exception  java.lang.NullPointerException
    给if语句去掉就没错误了。迷惑!根据你的现象:给if语句去掉就没错误了。
    phone=request.getParameter("phone");得到的phone值本来就是null
    如果你对null进行phone.trim()则会抛出
    exception  java.lang.NullPointerException。try:
    phone=request.getParameter("phone")==null?"":request.getParameter("phone") ;
      

  4.   

    哦,原来是这样!
    那第二个问题:
    phone=request.getParameter("phone");    
    if(phone.trim().equals(""))     
    {
    phone=null;
    }
    提示错误:exception  java.lang.NullPointerException我如果只写:phone=request.getParameter("phone");    
    插入数据库,如果为空的话,phone的值就为NULL。
    为什么我加个判断语句它就不正常运行了呢?
      

  5.   

    试试在if(phone.trim().equals(""))     
    前面加一个if(phone==null)
      

  6.   

    是这样不:
    phone=request.getParameter("phone");    
    if(phone==null)
    {
    if(phone.trim().equals(""))     
    {
    phone=null;
    }
    }
    还是不行,一样的错误:java.lang.NullPointerException
      

  7.   

    改为:phone=request.getParameter("phone")==null?"":request.getParameter("phone");
    就不会错了