2011-11-24 2 views
0

Учитывая следующую входную строку:выделяющихся SQLite Результатов

(?i:\bsys\.user_catalog\b) 

Хранимых в Sqlite TEXT поля. При получении с помощью select я получаю следующее:

При выполнении простой командной строки, например.

$ sqlite3 databse.name "select a from b" > file.results 

Окажись в редакторе, как это:

a screenshot of the editor

Когда я использую, sqlite3 Lib питона, он печатает как:

(?i:\x08sys\\.user_catalog\x08) 

Вопросов:

  1. Будет переключаться до BLOB, решит это для меня?
  2. Есть ли способ остаться TEXT и все еще сделать это правильно.

Заранее спасибо

ответ

1

Пару идей:

  • Убедитесь, что строка была первоначально вводится как сырыми, так что маскирование не происходит, прежде чем сохранить его.

  • Я думаю, что ТЕКСТ будет работать так же, как и BLOB, но вам, возможно, придется подтвердить экспериментом.

  • магазин как буфера объекта: c.execute('INSERT INTO documents VALUES (?, ?)', (somekey, buffer(yourstring)))

+0

обеспечения ввода вставляется в качестве сырья (например, 'г«»«ВВОД»«» ') сделал свою работу, нет необходимости в blobing и такое , по-видимому, вкладка была сбежана с помощью sqlobject lib. –

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