我在数据库中搜索,我想在任何情况下获取数据(UPPER lower或Mix)。我发现COLLATE NOCASE
可以解决这个问题,但它会导致错误。
正如您在此处可以看到查询...
android.database.sqlite.SQLiteException:靠近“COLLATE_NOCASE”:语法 错误(代码1):,编译时:
Select
_ID, Name, Surname, Username, Password, Roll
From
USER
Where
name = 'Danyal Ahmed'
and surname = 'CHAUDHRY' COLLATE_NOCASE;
感谢任何帮助。
03-04 23:41:06.760 28952-28952 /? E / AndroidRuntime:致命异常: 主要 处理:com.example.danyalahmed.stockmanagement,PID:28952 android.database.sqlite.SQLiteException:靠近“COLLATE_NOCASE”:语法 错误(代码1):,编译时:选择_ID,Name,Surname, 用户名,密码,滚动来自USER,其中name ='Danyal Ahmed'和 surname ='CHAUDHRY'COLLATE_NOCASE; 在android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native 方法) 在android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:895) 在android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:506) 在android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:588) 在android.database.sqlite.SQLiteProgram。(SQLiteProgram.java:58) 在android.database.sqlite.SQLiteQuery。(SQLiteQuery.java:37) 在android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:44) 在android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1316) 在android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1255) 在com.example.danyalahmed.stockmanagement.Classes.DbAdapter.getData(DbAdapter.java:113) at com.example.danyalahmed.stockmanagement.Activities.Users $ 1.onItemSelected(Users.java:83) 在android.widget.AdapterView.fireOnSelected(AdapterView.java:914) 在android.widget.AdapterView.dispatchOnItemSelected(AdapterView.java:903) 在android.widget.AdapterView.access $ 300(AdapterView.java:48) 在android.widget.AdapterView $ SelectionNotifier.run(AdapterView.java:873) 在android.os.Handler.handleCallback(Handler.java:739) 在android.os.Handler.dispatchMessage(Handler.java:95) 在android.os.Looper.loop(Looper.java:211) 在android.app.ActivityThread.main(ActivityThread.java:5373) at java.lang.reflect.Method.invoke(Native Method) 在java.lang.reflect.Method.invoke(Method.java:372) 在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:1020) 在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:815)
答案 0 :(得分:3)
它" COLLATE NOCASE"没有下划线。