Уведомления

Группа в Telegram: @pythonsu

#1 Сен. 25, 2011 12:22:42

muromez
От:
Зарегистрирован: 2011-09-25
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Программа для работы с одной базой

Нужна помощь в написание программы для ведения базы клиентов.
Подскажите какую базу данных лучше использовать, мне требуется всего одна таблица там будут разные столбцы, пока мне надо чтоб я хотяб мог записывать инфу в базу, потом потребуется поиск или напоминание что такого-то числа заканчивается срок договора, потом планируется сделать графические интерфейс. Помогите плиз я знаю только основы, куда мне дальше двигаться, хоть дайте пинка может я сам разберусь и буду очень благодарен.



Офлайн

#2 Сен. 25, 2011 22:43:38

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  252  -
Профиль   Отправить e-mail  

Программа для работы с одной базой

Думаю вам пока насчет баз данных рано заморачиваться.

Если вас не очень волнуют проблемы одновременного доступа большого множества пользователей к данным
Если вам не требуется передача данных в локальной сети.
Если у вас нет нескольких сотен готовых sql запросов к вашей таблице.
Если размер вашей базы в таблице меньше 1 Гб.

Начните с таблицы в виде простого списка питона:

class Dogovor(object):
pass
table=[]
table.append(Dogovor())
потом посмотрите что такое dict
потом организуйте ввод вывод модулем cPickle
потом посмотрите http://docs.python.org/library/shelve.html
Этого может оказаться достаточно.
Если нет то: sqllight+sqlalhemy или zodb или … ну вобщем пишите если не получится.
Может оказаться что вас устроят готовые ERP системы
http://ru.wikipedia.org/wiki/ERP
http://ru.wikipedia.org/wiki/ERP5
http://ru.wikipedia.org/wiki/OpenERP



Отредактировано (Сен. 25, 2011 22:46:27)

Офлайн

#3 Сен. 27, 2011 15:27:32

muromez
От:
Зарегистрирован: 2011-09-25
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Программа для работы с одной базой

А поиск потом по спискам организовать можно и можно ли записывать их в отдельный файл, как? Я еще хотел спросить насчет CSV… Подойдет ли он под мои требования?



Отредактировано (Сен. 27, 2011 15:47:33)

Офлайн

#4 Сен. 27, 2011 22:10:52

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  252  -
Профиль   Отправить e-mail  

Программа для работы с одной базой

1
ЛИнейный поиск по спискам
lis=
поиск:

Поиск по первичному ключику:
lis={key1:a,key2:b,…}
val=lis
Элементы a,b,… можно вставить в несколько словарей -если нужен поиск по нескольким параметрам
2 запись в файл делается модулями Pickle, cPickle почти для любых объектов питона
3 CSV - а зачем? Если из него импортировать - то да. Есть модуль импорта, как впрочем из баз и из exel файлов. А хранить удобнее в пиклах.
Сам для небольших проектов пользуюсь zodb и не горюю. Время ее изучения раза в 4 больше изучения cPickle но потом ввода вывода в коде нет вообще - только открыть и закрыть базу. Насколько вам будет удобно, трудно сказать. В zodb нет запросов в смысле sql. Есть только питоновские структуры данных.



Отредактировано (Сен. 27, 2011 22:11:32)

Офлайн

#5 Сен. 28, 2011 12:01:29

Ed
От:
Зарегистрирован: 2008-12-13
Сообщения: 1032
Репутация: +  13  -
Профиль   Отправить e-mail  

Программа для работы с одной базой

Не придумывайте. Если не хотите реализовывать SQL на питоне, то берите какой-нибудь ORM(sqlalchemy, например) или другую обвязку над бд и начинайте с sqlite. Задачи такого рода имеют тенденцию к разрастанию и ограничивать себя pickle/CSV/you call it не вижу смысла.



Офлайн

#6 Сен. 28, 2011 17:51:21

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  252  -
Профиль   Отправить e-mail  

Программа для работы с одной базой

muromez
А поиск потом по спискам организовать можно и можно ли записывать их в отдельный файл, как?
Вобщем я с Ed согласен, просто судя по вопросам тут вам надо начать просто с изучения питона, без этого все равно sqlite и sqlalchemy не получится использовать.
Я изложил подходы, в меру своего понимания, в порядке усложнения конструкций языка. Для частных задачек может этого и хватит.

:) Из святых войн: Тут sql не изобретается, приведены стандартные конструкции select в языке python, И еще неизвестно, что будет короче - sql запрос или запрос на языке питон (конечно в приведенных примерах).



Офлайн

#7 Сен. 29, 2011 17:45:22

muromez
От:
Зарегистрирован: 2011-09-25
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Программа для работы с одной базой

doza_and, Вы написали:

Начните с таблицы в виде простого списка питона:
Код:

class Dogovor(object):
pass
table=
table.append(Dogovor())
а как это можно организовать всего лишь с помощью списков(напишите пожалуста полностью код)? и как потом прикрутить графику хотяб на тинкере? мой мозг походу не способен это осмыслить(( хочу узнать чисто для себя, а так на выходных почитаю sqlalchemy и попробую что нибудь сделать



Офлайн

#8 Окт. 7, 2011 19:38:13

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

Программа для работы с одной базой

если не ставится цель изучить питон и технологии, а только нужна программа
с возможностью допиливания мелочей, можно глянуть у меня здесь

пока только Windows



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version