2013-04-15 48 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()总是返回false。当我将希伯来语更改为英语时,此问题得到解决。我能修复它吗?

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

运行后创建。 使用“sqlite manager”或其他工具 检查表格以查看表格是否实际包含您期望获得的行