Добрый
Мало где на предприятиях используют Ubuntu.
Убунтами линух как-то не ограничивается… Есть и BSD и Солярки. По крайней мере в средней накрученности конторах я видел разное.
Добрый
Установка действительно не сложная, но хотелось бы сделать всё одной программой
Огнептица таки с самого начала умеет embeded.
Lexander
Поделись впечатлениями подробнее, плз.
Насчет Оракела - это 10-ка Express Edition, правда не самый удачный билд основные ограничения - 1 гиг памяти, 1 проц. и, что хуже, 4 гига пространства за все про все. Зато очень удобная админка с возможностью расширения. Очень быстр и компактен (насколько это вообще можно говорить о СУБД такого уровня) с отличными дефолтными параметрами настройки. Гоняли и под вендой и под линухом. Показал себя лучше на линухе. Для линуха есть deb и rpm сборки. Поставляется в виде юникодной и не юникодной сборки. Так что, если используете кодировку cp1251 то надо брать неюникодную сборку. Она, к тому же, шустрей. Да, смена кодировки осуществляется так:
CONNECT / AS SYSDBA;
ALTER SYSTEM ENABLE RESTRICTED SESSION;
ALTER DATABASE CHARACTER SET INTERNAL_USE CL8MSWIN1251;
SHUTDOWN;
STARTUP;
MSSQL - Ограничения почти те же, только ограничение на объем идет на сжему, а не на всю базу, как в оракле. Но зато гораздо тормознее, админка, ИМХО, хуже, баги при большом файле журнала и приближении к концу 4 гиг. Плюс база растет быстрее, чем у Оракла и хуже сжимается.
DB2 - знаком только с ограничениями, такие же, как и на Оракл, только без ограничений на дисковое пространство. В инете видел хорошие отзывы от англоговорящих.
Из того, что перечислил мне больше всего понравилась связка Oracle/Linux.
Добрый
Юрий большое спасибо, теперь буду разбираться с sqlite и sqlalchemy.
Настоятельно не рекомендую. sqlite - отличный для однопользовательской СУБД, типа как в файрфоксе, но не пойдет для многопользовательской работы. Алхимия - тут надо смотреть. Я, например, предпочитаю все запросы делать руками, а для этого хватает DBAPI, кроме того, если использовать файрберд то kinterbasdb умеет такое:
import kinterbasdb as k
con = k.connnect(.......)
cursor = con.cursor()
cyrsor.execute('select * from table where field1=? and field2=?', (1, 2))
for record in cursor.fetcallmap(): print record["YOUR_FIELD"]