Найти - Пользователи
Полная версия: sqlite
Начало » Базы данных » sqlite
1 2 3 4
OlDer
slav0nic
но если тебе нужна серьёзная логика, то лучше СУБД
И вот тут на арену выходит firebird :cool:. Весьма рекомендую. firebird имеется в варианте embedded, при этом он отличается от sqlite только в лучшую сторону - хранимые процедуры, UDF, полная поддержка триггеров, database events и прочее. И самое главное преимущество - если вдруг понадобится развернуть программу в клиент-серверном варианте, в программе не нужно будет делать никаких изменений - достаточно имя файла в строке подключения заменить на host:database и все.
Плюс в python он прекрасно поддерживается - kinterbasdb с обертками - SQLObject, SQLAlchemy, плюс большое русскоязычное community, да и вообще, основные разработчики firebird сейчас - наши (Россия/Украина), плюс отличные инструменты для разработки/администрирования БД тоже бесплатны для exUSSR.
Есть, конечно, и недостатки (например низкая распространенность на хостингах), но это сейчас меняется в лучшую сторону - тот же grokthis.net (на котором хорошо python поддерживается) предлагает firebird в качестве опции.
koder
!!!Все написанное относится к версии 1.5. 2.0 не знаю!!!

OlDer
И вот тут на арену выходит firebird
И тут же уходит. Использовали в 24/7 программе Firebird 1.5 :(. НИКОГДА НЕ ИСПОЛЬЗУЙТЕ “ЭТО” для любых критичных задач. Начиная от банальных глюков (сервер падает при АРИФМЕТИЧЕСКОМ ПЕРЕПОЛНЕНИИ) до кривого SQL синтаксиса (например нельзя делать “select from ( select” ). Низкая скорость работы. Для небольших программа может и подходит. Но в случае с эмбеддед версией я не знаю можно-ли работать из питона(по меньшей мере модулей не видел). Скорость гарантированно будет ниже чем у sqlite.


OlDer
хранимые процедуры
В sqlite можно писать хранимые процедуры причем на питоне(в смысле что можно просто забиндить на хранимую процедуру любую питоновскую функцию). То-же относится и постгресу.

OlDer
Плюс в python он прекрасно поддерживается - kinterbasdb с обертками - SQLObject, SQLAlchemy
Как и все остальные базы.

OlDer
например низкая распространенность на хостингах
+1. Скажем прямо я первый раз слышу о том что какой-то хостер предлагает firebird. Подавляющее(тотально подавляющее) большинство программ используют другие базы.

OlDer
но это сейчас меняется в лучшую сторону
-1. Хочу увидеть официальную статистику.

Единственная причина по которой я бы рекомендовал Firebird это наличие IBExpert(для mysql можно toad халявный использовать(тока придется каждые два месяца перекачивать его заново)), а вот для постгреса ничего такого уровня не знаю. Если же ето не проблема то в невстраиваемая база - ето пострес, а встраиваемая sqlite3.
slav0nic
оффтоп но слышал что firebird юзается в абрамсах (американский танк =) )
koder
slav0nic
оффтоп но слышал что firebird юзается в абрамсах (американский танк =) )
Хочу ссылку. Поржем всей конторой. :)
OlDer
koder
Использовали в 24/7 программе Firebird 1.5 :(. НИКОГДА НЕ ИСПОЛЬЗУЙТЕ “ЭТО” для любых критичных задач.
Ничего что я использую это (и собираюсь продолжать) для любых (в том числе и достаточно критичных) задач?
koder
Начиная от банальных глюков (сервер падает при АРИФМЕТИЧЕСКОМ ПЕРЕПОЛНЕНИИ)
URL ошибки в трекере? У меня не падает, может я что-то не так делаю?
koder
до кривого SQL синтаксиса (например нельзя делать “select from ( select” ).
Так а что здесь кривого? Синтаксис самый прямой. В процедуре это всегда можно было заменить на for select… Ну и в 2.0 select from select поддерживается.
koder
Низкая скорость работы. Для небольших программа может и подходит. Но в случае с эмбеддед версией я не знаю можно-ли работать из питона(по меньшей мере модулей не видел). Скорость гарантированно будет ниже чем у sqlite.
У меня скорость работы - высокая. И еще раз повторю - работа с embedded версией ничем не отличается от работы с клиент/серверной версией. Тот же kinterbasdb, только fbclient.dll заменить. Причем fbclient.dll от embedded версии будет работать и с локальной базой и с удаленным сервером.
А насчет “гарантированно ниже” - я уже однажды потратил полдня на демонстрацию обратного. Могу повторить, но уже за деньги :cool:
koder
В sqlite можно писать хранимые процедуры причем на питоне(в смысле что можно просто забиндить на хранимую процедуру любую питоновскую функцию).
А вот тут: http://www.sqlite.org/cvstrac/wiki?p=UnsupportedSql написано что stored procedures не поддерживаются.
OlDer
Плюс в python он прекрасно поддерживается - kinterbasdb с обертками - SQLObject, SQLAlchemy
koder
Как и все остальные базы.
Не буду говорить за все остальные, но MySQLdb-python и pygresql мне показались намного менее качественными чем kinterbasdb. Что могу вспомнить - это невозможность отловить warning в MySQLdb и отсутствие параметров к запросам в pygresql (в psycopg2 все уже намного лучше, я знаю).
koder
OlDer
например низкая распространенность на хостингах
+1. Скажем прямо я первый раз слышу о том что какой-то хостер предлагает firebird. Подавляющее(тотально подавляющее) большинство программ используют другие базы.
Скажем прямо - кто не хочет, тот не ищет. Я сейчас за минуту нашел украинский хостинг с firebird: http://superhost.com.ua/tarif.html И русские есть, и прочие другие: http://www.ibphoenix.com/main.nfs?a=ibphoenix&page=ibp_hosting Не говоря уже о том что, как тут справедливо недавно заметили в соседней ветке, VDS сейчас дешевле семечек.
koder
OlDer
но это сейчас меняется в лучшую сторону
-1. Хочу увидеть официальную статистику.
Я тоже хочу. Но пока что могу судить только по собственным впечатлениям.
OlDer
koder
slav0nic
оффтоп но слышал что firebird юзается в абрамсах (американский танк =) )
Хочу ссылку. Поржем всей конторой. :)
Нате, поржыте: http://www.google.com только не firebird а interbase (firebird'а тогда еще не было).
:lol:
batman
Мне всё-таки необходима больше локальная база данных. Так что лучше, можете посоветовать?:)
koder
Ну у меня есть железный аргумент - sqlite входит в впоставку питона нач. с 2.5
И sqlite заметно пошире используется. Лично я советую sqlite
slivlen
koder
Ну у меня есть железный аргумент - sqlite входит в впоставку питона нач. с 2.5
И sqlite заметно пошире используется. Лично я советую sqlite
Присоединяюсь по тем же соображениям :)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB