Уведомления

Группа в Telegram: @pythonsu

#1 Март 31, 2010 00:45:08

dr911
От:
Зарегистрирован: 2010-03-31
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Словари в массив PostgreSQL

Доброй ночи друзья.
Возник следующий вопрос. Имеется словарь вида:

{“result”:100, “newarray”:, “ourstr”:“Moscow”, “dict”: {“field”:“params”, “coins”:2}}

Есть задача, хранить подобные структуры в поле PostgreSQL как массив.
Как преобразовать подобные массивы в строку PostgreSQL?

Простите за ликбез. Новичок в Python. Буду благодарен любым подсказкам.



Офлайн

#2 Март 31, 2010 01:17:39

villager
От:
Зарегистрирован: 2008-11-04
Сообщения: 111
Репутация: +  0  -
Профиль   Отправить e-mail  

Словари в массив PostgreSQL

>>> c=“”“{”result“:100, ”newarray":, “ourstr”:“Moscow”, “dict”: {“field”:“params”, “coins”:2}}“”“
>>> c
'{”result“:100, ”newarray":, “ourstr”:“Moscow”, “dict”: {“field”:“params”, “coins”:2}}'
>>> d=eval©
>>> d
{'ourstr': ‘Moscow’, ‘dict’: {'field': ‘params’, ‘coins’: 2}, ‘result’: 100, ‘newarray’: }
>>> s=“%s” % d
>>> s
"{'ourstr': ‘Moscow’, ‘dict’: {'field': ‘params’, ‘coins’: 2}, ‘result’: 100, ‘newarray’: }"



Офлайн

#3 Март 31, 2010 01:27:09

dr911
От:
Зарегистрирован: 2010-03-31
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Словари в массив PostgreSQL

Возможно неверно написал. или не понял написанного.
В поле postgresql должна сохраняться строка массива postgresql , с ней возможно будут проводиться операции в запросах к базе.
и еще
есть вариант хранить массивы и структуры в виде строки json в базе. что лучше и быстрее? скажу, что при выборе строки, она будет постоянно разбираться и собираться при записи



Офлайн

#4 Апрель 1, 2010 11:43:22

ZZZ
От: Москва
Зарегистрирован: 2008-04-03
Сообщения: 2161
Репутация: +  26  -
Профиль   Адрес электронной почты  

Словари в массив PostgreSQL

pickle? Или я не понял вопроса?



Офлайн

#5 Апрель 3, 2010 00:38:58

poltergeist
От:
Зарегистрирован: 2007-02-28
Сообщения: 522
Репутация: +  0  -
Профиль   Отправить e-mail  

Словари в массив PostgreSQL

Офлайн

#6 Апрель 3, 2010 10:37:26

dr911
От:
Зарегистрирован: 2010-03-31
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Словари в массив PostgreSQL

Друзья по поводу json ясно.
вопрос был каков формат хранения, форма записи массивов в PostgreSQL. Скажем, есть у нас словарь, нам нужно его записать в поле PostgreSQL типа array . Собственно хотелось попробывать работу с массивами в PostgreSQL , выбора и сортировка массивов по ключам.



Офлайн

#7 Апрель 3, 2010 12:35:27

o7412369815963
От:
Зарегистрирован: 2009-06-17
Сообщения: 1986
Репутация: +  32  -
Профиль   Отправить e-mail  

Словари в массив PostgreSQL

может просто сделать ещё одну таблицу…?

Офлайн

#8 Апрель 3, 2010 12:46:07

ZZZ
От: Москва
Зарегистрирован: 2008-04-03
Сообщения: 2161
Репутация: +  26  -
Профиль   Адрес электронной почты  

Словари в массив PostgreSQL

o7412369815963, потому что это не sqlite и не mysql – тут есть много чего очень удобного… Например, массивы, кастомные типы…

dr911, словарь в массив, это извращение.
Вообще для работы с типами постгри вполне можно использовать DB-API2 и чистый синтаксис самого постгри. Совершенно не понимаю проблематики. Главное, это правильно сформировать запрос – почитай документацию по постгри, там всё есть.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version