2016-04-17 3 views
-4

android.database.sqlite.SQLiteException: рядом с «s»: синтаксическая ошибка (код 1): при компиляции: INSERT OR REPLACE INTO фильмы (backdrop_path, id, original_language, orginal_title, обзор, poster_path, название, популярность, для взрослых, видео, vote_avg, vote_count, release_date, избранное) VALUES ('/tbhdm8UJAb4ViCTsulYFL3lxMCd.jpg','76341','en', «нуль», «Апокалиптическая история, поставленная в самых отдаленных уголках нашей планеты, в суровом пустынном ландшафте, где человечество сломано, и большинство из всех сумасшедших борется за потребности в жизни. В этом мире существуют два мятежника в бегах, которые просто может быть в состоянии восстановить порядок. Есть Макс, человек действия и человек с несколькими словами, который ищет спокойствия после потери жены и ребенка после хаоса. И Фуриоса, женщина действия и женщина, которая верит в ее путь t o выживание может быть достигнуто, если она сможет перебраться через пустыню на родину своего детства. ','/kqjL17yufvn9OVLyXYpvtyrFfak.jpg ',' Mad Max: Fury Road ',' 19.7 ',' false ',' false ',' 7 ',' 4359 ',' - 546474976 ',' false ' ); на android.database.sqlite.SQLiteConnection.nativePrepareStatement (Native Method) в android.database.sqlite.SQLiteConnection.acquirePreparedStatement (SQLiteConnection.java:887)android.database.sqlite.SQLiteException: рядом с «s»: синтаксическая ошибка (код 1):,

+0

разум дает нам нечто большее, чем выход LogCat ...? – Razgriz

ответ

3

У вас есть «S в строку и не избежать Это. Чтобы этого избежать, никогда не делайте прямую вставку, как это, всегда используйте переменные связывания. Это также позволит избежать ошибок SQL-инъекций, и я уверен, что ваш код пронизан на основе этого.

+0

Ударьте меня к ней на минуту. – Razgriz

2

Ваша ошибка, скорее всего, в этом входе:

An apocalyptic story set in the furthest reaches of our planet, in a stark desert landscape where humanity is broken, and most everyone is crazed fighting for the necessities of life. Within this world exist two rebels on the run who just might be able to restore order. There's Max, a man of action and a man of few words, who seeks peace of mind following the loss of his wife and child in the aftermath of the chaos. And Furiosa, a woman of action and a woman who believes her path to survival may be achieved if she can make it across the desert back to her childhood homeland.

Вы имеете неэкранированные одинарную кавычку на части ... There's Max

Когда SQLite пытается выполнить вставку этой записи, она заканчивается при этой единственной цитате, после этого он пытается обработать s Max, a man of action ....

Чтобы решить эту проблему, избегайте «как такового:»

Вам нужно избегать ваших символов в SQLite, чтобы избежать ошибок, подобных этим и SQL-инъекциям.

2

вы пытаетесь вставить There's Max где (') должны быть экранированы, как There\'s Max

+0

или так: 'Там Макс '. Еще лучше: используйте ** связанные параметры ** ('?'), И Android будет обрабатывать его бесплатно. –

+1

@BobMalooga yah вы правы. –

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