2013-04-15 1 views
1

Я определил SQL таблицу:SQL в Android-иврит

 ... 

     customersDB2.execSQL("INSERT INTO " + TABLE_NAME + " Values (86, 'This ', 'זה ');"); 
     customersDB2.execSQL("INSERT INTO " + TABLE_NAME + " Values (87, 'most ', 'ביותר ');"); 
     customersDB2.execSQL("INSERT INTO " + TABLE_NAME + " Values (88, 'use ', 'uu ');"); 


..... 


    } 
    catch (SQLiteException se) { 
     Log.e(getClass().getSimpleName(), "Could not create records"); 
    } 
} 

я инициализировать его на "OnCreate":

public void onCreate(Bundle savedInstanceState) { 
    try { 
     customersDB2 = this.openOrCreateDatabase( DB_NAME, MODE_PRIVATE, null); 


     customersDB2.execSQL("CREATE TABLE " + 
       TABLE_NAME + 
       " (Block INT," + 
       " Name VARCHAR, Street VARCHAR);"); 
     mFillDbsTable();} 
    catch (SQLiteException se) { 
     Log.e(getClass().getSimpleName(), "create/Open the database problem"); 


    } 

Моя проблема заключается в том, что c.moveToFirst() всегда возвращает ложь. Эта проблема исправлена, когда я сменил иврит на английский. Я мог бы исправить это?

Cursor c = customersDB2.rawQuery("SELECT * FROM " + 
      TABLE_NAME +" where Block == 88", null); 


    if (c != null) { // this return true 

     if (c.moveToFirst()) { //this return false 
      do { 
       Toast.makeText(this,"null1",Toast.LENGTH_SHORT).show(); 
       name = c.getString(c.getColumnIndex("Name")); 
       street = c.getString(c.getColumnIndex("Street")); 

       results.add(name + ", " + street); 
      }while (c.moveToNext()); 
     } 
    } 

Журнал пуст.

ответ

0

после бега oncreate. проверить таблицу с помощью «sqlite manager» или другого инструмента, , чтобы увидеть, действительно ли таблица содержит строки, которые вы ожидаете получить.

 Смежные вопросы

  • Нет связанных вопросов^_^