2013-01-14 5 views
1

я делаю что-то вроде этого в моем коде:Вставка JSON данных в SQLite - OperationalError: непризнанный лексема "{"

import sqlite3 
... 
sqlString=company['name']+","+simplejson.dumps(info) 
cur.execute("INSERT INTO companyInfo VALUES("+sqlString+")") 

, но я получаю следующее сообщение об ошибке: cur.execute ("INSERT INTO companyBlobs VALUES («+ valueString +») ") sqlite3.OperationalError: непризнанный маркер:„{“

Я предполагаю, что это проблема с отводящими данными в формате JSON, но не знает, как это исправить. Идеи?

+0

Я знаю, что вы говорите, но я делаю очень много запросов к API, и перед обработкой данных мне нужно иметь все как JSON, поэтому я просто временно храню JSON в sqlite. – leonsas

ответ

4

пытаются использовать параметризованную запрос:

sqlString=company['name']+","+simplejson.dumps(info) 
cur.execute("INSERT INTO companyInfo VALUES (?)", (sqlString,)) 

это будет автоматически избежать ваших входов.

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

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