解决方案 »

  1.   

    你debug下看哪句话没执行,,,
      

  2.   

     String str =  Query2(name);   //先判断是否存在此人
                   System.out.println(str);
                   if(str == null) {
                    
                     insret_Contant(name,strPhoneNumber);    
                     System.out.println("============可以导入--------------");
                   } else {
                    
                    System.out.println("==========已经存在此人-------------");
                   }
               
                }   
               // string += "\n";   
                phone.close();            
            }   
            cursor.close();   
        }
       
        
        

        //==================查询所有数据(根据名字查看是否存在此联系人)======================== 
        public String Query2(String name) {
        
         DatabaseHelper dbHelper1 = new DatabaseHelper(Address_Book.this,"test_mars_db");
    SQLiteDatabase db1 = dbHelper1.getReadableDatabase();
    Cursor cursor1 = db1.query("user", new String[]{"name","phone","qq","mail","address"}, "name=?", new String[]{name}, null, null, null);
        while(cursor1.moveToNext()){
    String name1 = cursor1.getString(cursor1.getColumnIndex("name"));
                if(name.equals(name1)) {
                
                 return name1;
                }
    }  
            
         return null;
        }     
    就是这个方法,输入相同姓名联系人,没有提示已经存在次联系人
      

  3.   

    没有出现budeg,只是,没有执行这个方法而已,其他功能都正常
      

  4.   

    我说了啊,debeg调试啊,,,
      

  5.   

    cursor查询结果为空,
    把你的数据库test_mars_db导出来看看里面的user表有没有数据,有没有已经存在的名字?
      

  6.   

    好了,你这样写  public String Query2(String name) {
        
         DatabaseHelper dbHelper1 = new DatabaseHelper(Address_Book.this,"test_mars_db");
    SQLiteDatabase db1 = dbHelper1.getReadableDatabase();
    Cursor cursor1 = db1.query("user", new String[]{"name","phone","qq","mail","address"}, "name=?", new String[]{name}, null, null, null);
        String name1=null;
    while(cursor1.moveToNext()){
    if(name.equals(cursor1.getString(cursor1.getColumnIndex("name")))){
    name1=name;
    }
    }  
            
         return name1;
        }  其实我想问如果name1为null,你去system.out.print(name1)不会报错???