При загрузке карты из файла содержащего
минус (в моём случае yamap-kg.tar),
программа пытается удалить таблицу
cahs_yamap-kg_tar, что приводит к
исключению:
E/Database( 747): Failure 1 (near "-": syntax error) on 0x22f8a0 when
preparing 'DROP TABLE IF EXISTS cahs_yamap-kg_tar'.
D/AndroidRuntime( 747): Shutting down VM
W/dalvikvm( 747): threadid=3: thread exiting with uncaught exception
(group=0x4000fe70)
E/AndroidRuntime( 747): Uncaught handler: thread main exiting due to
uncaught exception
E/AndroidRuntime( 747): android.database.sqlite.SQLiteException: near "-":
syntax error: DROP TABLE IF EXISTS cahs_yamap-kg_tar
E/AndroidRuntime( 747): at
android.database.sqlite.SQLiteDatabase.native_execSQL(Native Method)
E/AndroidRuntime( 747): at
android.database.sqlite.SQLiteDatabase.execSQL(SQLiteDatabase.java:1496)
E/AndroidRuntime( 747): at
org.andnav.osm.views.util.OpenStreetMapTileFilesystemProvider$OpenStreetMapTileF
ilesystemProviderDataBase.CreateTarIndex(OpenStreetMapTileFilesystemProvider.jav
a:783)
E/AndroidRuntime( 747): at
org.andnav.osm.views.util.OpenStreetMapTileFilesystemProvider.IndexTarFile(OpenS
treetMapTileFilesystemProvider.java:167)
E/AndroidRuntime( 747): at
org.andnav.osm.views.util.OpenStreetMapTileFilesystemProvider.setCashFile(OpenSt
reetMapTileFilesystemProvider.java:148)
E/AndroidRuntime( 747): at
org.andnav.osm.views.util.OpenStreetMapTileProvider.setRender(OpenStreetMapTileP
rovider.java:83)
E/AndroidRuntime( 747): at
org.andnav.osm.views.OpenStreetMapView.setRenderer(OpenStreetMapView.java:285)
E/AndroidRuntime( 747): at
com.robert.maps.MainView.onOptionsItemSelected(MainView.java:283)
E/AndroidRuntime( 747): at
android.app.Activity.onMenuItemSelected(Activity.java:2085)
E/AndroidRuntime( 747): at
com.android.internal.policy.impl.PhoneWindow.onMenuItemSelected(PhoneWindow.java
:820)
E/AndroidRuntime( 747): at
com.android.internal.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:139)
E/AndroidRuntime( 747): at
com.android.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:81
3)
E/AndroidRuntime( 747): at
com.android.internal.view.menu.MenuDialogHelper.onClick(MenuDialogHelper.java:12
0)
E/AndroidRuntime( 747): at
com.android.internal.app.AlertController$AlertParams$3.onItemClick(AlertControll
er.java:884)
E/AndroidRuntime( 747): at
android.widget.AdapterView.performItemClick(AdapterView.java:283)
E/AndroidRuntime( 747): at
android.widget.ListView.performItemClick(ListView.java:3132)
E/AndroidRuntime( 747): at
android.widget.AbsListView$PerformClick.run(AbsListView.java:1620)
E/AndroidRuntime( 747): at
android.os.Handler.handleCallback(Handler.java:587)
E/AndroidRuntime( 747): at
android.os.Handler.dispatchMessage(Handler.java:92)
E/AndroidRuntime( 747): at android.os.Looper.loop(Looper.java:123)
E/AndroidRuntime( 747): at
android.app.ActivityThread.main(ActivityThread.java:3948)
E/AndroidRuntime( 747): at
java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime( 747): at
java.lang.reflect.Method.invoke(Method.java:521)
E/AndroidRuntime( 747): at
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:782)
E/AndroidRuntime( 747): at
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:540)
E/AndroidRuntime( 747): at dalvik.system.NativeStart.main(Native
Method)
По видимому, следует как-то заменять дефис
в названиях таблиц, или эти
названия помещать в какие-нибудь кавычки. В
мускуле для этого используются
апострофы (`), в некоторых других диалектах
— квадратные скобки. Как в
SQLite я, к сожалению, не знаю.
Original issue reported on code.google.com by edward.h...@gmail.com on 8 Sep 2009 at 7:44
Original issue reported on code.google.com by
edward.h...@gmail.com
on 8 Sep 2009 at 7:44