Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: И опять SQLite  (Прочитано 1437 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Grigory Smirnov

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1339
  • Дайте мне исходники, и я переверну Землю.
    • Просмотр профиля
    • Дафтер
И опять SQLite
« : 21 Август 2013, 17:00:21 »
Всем привет, у меня опять проблема... Вообщем я записываю текст в SQLite. Хочу записать текст с отступами, добавляю \n в строку. Но ничего не выходит, получаю исходный текст не с отступами, а с \n. Что я не правильно делаю?

Python 3.
« Последнее редактирование: 21 Август 2013, 17:02:48 от Grigory Smirnov »

Оффлайн Чистый

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 3474
  • nix - вот оно счастье...
    • Просмотр профиля
Re: И опять SQLite
« Ответ #1 : 21 Август 2013, 17:01:52 »
Grigory Smirnov,
Тип поля в БД какой ? Текст в какой кодировке ? БД в какой кодировке ? БД чаще всего ничего не форматирует а отдает и сохраняет то что ей дают
Тестовый репозиторий kdeNeur ppa:devcode/kdeneur
各々が死ぬことをどのように決定する

Оффлайн Grigory Smirnov

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1339
  • Дайте мне исходники, и я переверну Землю.
    • Просмотр профиля
    • Дафтер
Re: И опять SQLite
« Ответ #2 : 21 Август 2013, 17:02:34 »
Чистый, тип str, кодировка utf8.

Оффлайн Чистый

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 3474
  • nix - вот оно счастье...
    • Просмотр профиля
Re: И опять SQLite
« Ответ #3 : 21 Август 2013, 17:06:18 »
Grigory Smirnov,
попробуй поставить возврат коретки (\n\r) но как по мне ты хней маешься, пусть бд хранит так как хранит а твоя задача форматировать текст перед отображением
Тестовый репозиторий kdeNeur ppa:devcode/kdeneur
各々が死ぬことをどのように決定する

Оффлайн Grigory Smirnov

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1339
  • Дайте мне исходники, и я переверну Землю.
    • Просмотр профиля
    • Дафтер
Re: И опять SQLite
« Ответ #4 : 21 Август 2013, 17:13:12 »
Чистый, как его форматировать то? Вот выводит он текст во всю строчку "привет как дела". И что дальше? Если \n не работает... \n\r не помогает.

Оффлайн Чистый

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 3474
  • nix - вот оно счастье...
    • Просмотр профиля
Re: И опять SQLite
« Ответ #5 : 21 Август 2013, 17:17:14 »
Grigory Smirnov,
где выводит - вот в чем вопрос
Тестовый репозиторий kdeNeur ppa:devcode/kdeneur
各々が死ぬことをどのように決定する

Оффлайн Grigory Smirnov

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1339
  • Дайте мне исходники, и я переверну Землю.
    • Просмотр профиля
    • Дафтер
Re: И опять SQLite
« Ответ #6 : 21 Август 2013, 17:18:48 »
Чистый, в gui. Если знаете как в консоли, то и в консоли.

Оффлайн Чистый

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 3474
  • nix - вот оно счастье...
    • Просмотр профиля
Re: И опять SQLite
« Ответ #7 : 21 Август 2013, 17:22:46 »
Grigory Smirnov,
каком GUI (Gtk+/Qt) ...
Тестовый репозиторий kdeNeur ppa:devcode/kdeneur
各々が死ぬことをどのように決定する

Оффлайн Чистый

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 3474
  • nix - вот оно счастье...
    • Просмотр профиля
Re: И опять SQLite
« Ответ #8 : 21 Август 2013, 17:25:17 »
в консоле все просто:
printf "test\n\rtestsetse\n"выведет

Цитировать
test
testsetse
Тестовый репозиторий kdeNeur ppa:devcode/kdeneur
各々が死ぬことをどのように決定する

Оффлайн Grigory Smirnov

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1339
  • Дайте мне исходники, и я переверну Землю.
    • Просмотр профиля
    • Дафтер
Re: И опять SQLite
« Ответ #9 : 21 Август 2013, 17:27:10 »
Чистый, Tkinter.
(Нажмите, чтобы показать/скрыть)

Ну так я знаю. Ну вот надо вывести ячейку из БД. Там текст в формате test\nhello. Но он выводит не с переносом.

Оффлайн Чистый

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 3474
  • nix - вот оно счастье...
    • Просмотр профиля
Re: И опять SQLite
« Ответ #10 : 21 Август 2013, 17:33:52 »
Grigory Smirnov,
тогда смотри как Label из Tkinter принимает перенос строки и возврат каретки, вот тут у тебя основной касяк....
Тестовый репозиторий kdeNeur ppa:devcode/kdeneur
各々が死ぬことをどのように決定する

Оффлайн milssky

  • Новичок
  • *
  • Сообщений: 22
    • Просмотр профиля
Re: И опять SQLite
« Ответ #11 : 22 Август 2013, 08:47:57 »
Думается мне, что спецсимволы нужно экранировать. В sqlite, это делается кавычкой одинарной, если мне память не изменяет.

Оффлайн Grigory Smirnov

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1339
  • Дайте мне исходники, и я переверну Землю.
    • Просмотр профиля
    • Дафтер
Re: И опять SQLite
« Ответ #12 : 23 Август 2013, 19:30:33 »
milssky, '?

Оффлайн maximand

  • Активист
  • *
  • Сообщений: 307
    • Просмотр профиля
Re: И опять SQLite
« Ответ #13 : 23 Август 2013, 19:45:50 »
Вот оракловый пример
select 'первая строка'||chr(13)||chr(10)||'вторая строка' "текст" from dual;для SQLite примерно так
update table set value='первая строка'||chr(13)||chr(10)||'вторая строка' "текст"Если текс есть, то не надо никаких \n
просто запихивать целиком в таблицу. varchar может иметь ограничение по длине.
В этом случае CLOB можно использовать.

ЗЫ по базам лучше спрашивать тут http://www.sql.ru/
« Последнее редактирование: 23 Август 2013, 19:50:04 от maximand »

Оффлайн Grigory Smirnov

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1339
  • Дайте мне исходники, и я переверну Землю.
    • Просмотр профиля
    • Дафтер
Re: И опять SQLite
« Ответ #14 : 23 Август 2013, 19:54:53 »
Не по теме: в tkinter объект label может сам сокращать текст по размерам виджета? Если да, то мучения с таблицей прекращаются.
 maximand, спасибо, попробую как вы сказали, ну и на сайт загляну.

 

Страница сгенерирована за 0.088 секунд. Запросов: 24.