powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Выбор между SQLIte и FireBird
40 сообщений из 40, показаны все 2 страниц
Выбор между SQLIte и FireBird
    #38507296
crause
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день.

Помогите с выбором базы.

В базе будет около 120 таблиц.
Примерный объем данных поступивших базу за год, будет составлять 3-5 GB

Выдержат ли эти базы такой объем? Не будет ли потом каких то подводных камней?
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38507323
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ни то, ни другое.

Потянуть то эти объемы эти базы потянут, но судя по самому вопросу, ты мало что знаешь об этих СУБД и значит будут очень большие проблемы в дальнейшем.
SQLite предназначена для embedded applictions. И требует хорошего знания С для успешной работы.
Firebird поделка Борлнадов и хороша только в связке с Дельфями.
В сумме эти СУБД из очень разных миров и выбирать между ними как между карьерным Камазом и болидом F1 для поездок за хлебом.

Для новичков с большими объемами лучше брать что-то типа Oracle или MS SQL - по ним учебников много. И спецов нанять проще.
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38507409
crause
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Про базы не знаю вообще ничего, вчера только сел читать про них.
Нужно именно эти, так как нету сервера у них, сервер будет писаться свой.
Работа с базой будет только происходить в режиме запись чтении, позже возможно какие-то плюшки допиляться, но на первоначальной долгой стадии этого хватает с головой.

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

Курил по поводу SQLite, для Delphi есть куча компонентов (Да это Вы и без меня знаете),
когда начал искать инфу по SQLite, то столкнулся с такой ситуацией, что один автор говорит не больше 300 мб (дальше глюки),
а на сервисе сравнения БД, говориться 32 GB, это и ввело в ступор.

Поэтому все же прошу дать ответ, не обращая внимания на то, что софт будет написал в Delphi.
SQLite или FireBird?
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38507428
crause
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот нашел сравнение FireBird мы SQLite] http://database-management-systems.findthebest.com/compare/13-53/Firebird-vs-SQLite
По сравнению понятно и совсем тупому, что FireBird по круче, всяких фишек больше.

Но опять же это первая моя база данных, раньше категорически не признавал их, в своих проектах использовал текстовые файлы. ))
Ближайший год, проект будет жить в Delphi, а дальше кто его знает.
SQL язык вроде везде одинаков, с малейшими изменениями.

И к ответу скажите, какого максимального размера может достигнуть та и другая база??
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38508413
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
crauseСофт будет написан на Delphi,Тогда либо Firebird, либо Oracle.
За дальнейшим иди в Дельфевый форум.

crauseКурил по поводу SQLite, для Delphi есть куча компонентов (Да это Вы и без меня знаете), Именно по этой причине SQLite это очень неподходящая база для Дельфей. Курить словарь на слово embedded до полного просветления. ... на просветление может понадобиться не один год к сожалению.

crauseкогда начал искать инфу по SQLite, то столкнулся с такой ситуацией, что один автор говорит не больше 300 мб (дальше глюки), а на сервисе сравнения БД, говориться 32 GB, это и ввело в ступор. Оба врут. Теоретически, SQLite может работать с террабайтами данных. На этом форуме есть люди имеющие на руках базы по две-три сотни гигабайт, но это исключение. А так как SQLite это embedded СУБД, то чаще всего ее базы не превышают нескольких мег. Просто по кругу решаемых задач...

crauseПоэтому все же прошу дать ответ, не обращая внимания на то, что софт будет написал в Delphi.
SQLite или FireBird?Если хочешь рвать на себе волосы в неудобных местах - выбирай базу независимо ни от чего. Но если хочешь писать на Дельфях - то Firebird это практически единственный вариант. Возможно использование Oracle, оно довольно неплохо представлено в Дельфях, но Дельфи это инструмент организованный вокруг идеи "компонентов". Так что выбор окружения для Дельфей очень ограничен.
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38508432
fd00ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White Owl, ощущение, что здесь соревнуются в бредовости заявлений))

тс, бери sqlite, она тупо проще и, пока каша в голове не уляжется, юзай ее. когда реально будет НЕ ХВАТАТЬ (это не тупо по размеру БД определяется, 32 гигабайта в которой можно ОЧЕНЬ разными по структуре данными набить) - перейдешь на Firebird тот же или еще что-то
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38508514
crause
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо за ответы. Ждал целый день.

Главной будет пока SQLite и в процессе буду изучать FireBird, по окончанию выберу что то одно.
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38508569
wowow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
crause,
Типизация полей бд sqlite более свободная, там по сути числа, текст и блобы.
С firebird необходимо более четко определяться с типами полей бд.
С одной стороны это хорошо, с другой если необходимо по ходу решения задач
на лету менять типы данных для хранения это очень выручает.
Поэтому смотря для каких задач.
А так я за SQLite!
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38511718
Фотография PPA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wowowcrause,
на лету менять типы данных для хранения это очень выручает.


Приведите реальный пример?
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38511719
Фотография PPA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fd00chощущение, что здесь соревнуются в бредовости заявлений))
- перейдешь на Firebird тот же или еще что-то

Прозрачный прыжок в продуктиве с "sqlite на Firebird/или что-то еще" победил по уровню бреда - 100% :)
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38512323
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
То, что некоторые этого не умеют, не делает прозрачные переходы между СУБД невозможными.
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38512576
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovТо, что некоторые этого не умеют, не делает прозрачные переходы между СУБД невозможными.ой, вот только не надо смущать молодежь.
Возможно это, но вот легко ли это будет, и будет ли этот переход экономически выгоден - это уже совершенно другой вопрос. Ответы на которые обычно: "нет" и "нет".

Прозрачные переходы возможны. Но для людей которые всерьез рассматривают "SQLite vs Firebird" - это практически нереально.
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38512592
fd00ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PPA,победил тот, кто в моем пред. посте увидел заявление о возможности сделатьPPAПрозрачный прыжок в продуктиве с "sqlite на Firebird/или что-то еще"
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38512776
Фотография Dmitry Arefiev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White OwlcrauseСофт будет написан на Delphi,Тогда либо Firebird, либо Oracle.
Очень странное замечание. В Delphi поддерживается большой список СУБД. При чем как родными так и сторонними библиотеками. FireDAC поддерживает, в частности, SQLite. При этом поддержка SQLite возможно будет одна из наиболее полных по кол-ву фичей.
White OwlcrauseКурил по поводу SQLite, для Delphi есть куча компонентов (Да это Вы и без меня знаете), Именно по этой причине SQLite это очень неподходящая база для Дельфей. Курить словарь на слово embedded до полного просветления. ... на просветление может понадобиться не один год к сожалению.
И чем же плоха embedded DBMS для Delphi ? Прекрасно встраивается в Delphi приложение, и позволяет расширять ее функциями, коллейшинами, пользовательскими источниками данных. SQLite безтиповая система данных вполне дружится с Delphi TDataSet и т.д.

Короче говоря, проблем нет в связке SQLite и Delphi.
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38512777
Фотография Dmitry Arefiev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По поводу SQLite и Firebird:
- SQLite более простая, быстрая, "малопользовательская";
- Firebird более классическая СУБД, масштабируемая, многопользовательская.
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38512870
Фотография PPA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
120 таблиц это достаточно большая модель
(если конечно на каждый простейший справочник типа - "1-мальчик, 2-девочка" не создана отдельная сущность)
Считаю что, подходить к выбору несущей СУБД нужно внимательней, а не только узнать сколько гигов влезет в ту или иную базу)
Но если в систему будет идти несколько конкурирующих писателей то sqlite лучше даже не рассматривать.
+ она не умеет размещать хранимый код в базе и не имеет нормальных инструментов для его отладки и сопровождения.

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

Но если вы выберите sqlite - продумайте о бэкапе.
база хранится в файлах и может рассыпаться (даже при работе в WAL-режиме)

у меня в программе идет одно-пользовательский доступ к sqlite базе (объемы 100m-1gb)
но иногда пользователи присылают сообщения о разрушении бд.

если разрушился индексный блок - получается восстановить, а если данные то уже того...

Примеры разрушенных баз

C:\!dc-db\db-sqlite-corrupt\db-bug-2>echo PRAGMA integrity_check; | sqlite3.exe FlylinkDC.sqlite
*** in database main ***
Page 4064: btreeInitPage() returns error code 11
Page 4062 is never used
Page 4063 is never used
Page 4065 is never used
Page 4066 is never used


C:\!dc-db\db-sqlite-corrupt\db-bug>echo PRAGMA integrity_check; | sqlite3.exe FlylinkDC.sqlite
*** in database main ***
On tree page 1590 cell 5: 2nd reference to page 39299
On tree page 1590 cell 5: Child page depth differs
On tree page 1590 cell 6: Child page depth differs
rowid 13426 missing from index iu_fly_last_ip_nick_hub
rowid 13465 missing from index iu_fly_last_ip_nick_hub
rowid 13583 missing from index iu_fly_last_ip_nick_hub
rowid 13628 missing from index iu_fly_last_ip_nick_hub
Error: near line 1: database disk image is malformed

По статистике собранной за 3 месяца у меня подобное разрушение возникло у 211 различных юзеров (рис 1)
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38513075
Фотография Dmitry Arefiev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PPA+ она не умеет размещать хранимый код в базе и не имеет нормальных инструментов для его отладки и сопровождения.
Постановка вопроса некорректная. Есть триггеры. Если их мало, то это встраиваемая СУБД и
все прочие расширения делаются на хост-языке. Можно создать функцию и вызывать ее из
триггера. Инструмент и отладчик - среда хост-языка.
PPAЕсли конечно всю бизнес логику разместить на клиенте - то на Delphi можно наговнокодить морду и прозрачно коннектиться к любой базульке, а потом героически искать почему нарушилась логическая целостность данных.
Тут все один большой "клиент" - СУБД встраиваемая. Хотя физически вся бизнес логика
будет в приложении, но дергаться она будет событийно самой СУБД, как и в больших СУБД.

Как выше White Owl писал:
White OwlКурить словарь на слово embedded до полного просветления. ... на просветление может понадобиться не один год к сожалению.
+1 к его словам, с уточнением, что проблем в связке embedded SQLite + Delphi нет.
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38513598
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dmitry Arefiev,

Гы... И ты еще спрашиваешь почему я резко против использования SQLite с Дельфями?

Да потому что обе системы это "вещь в себе". Что встраиваемый SQLite, что компонентная Дельфи. Подружить их можно конечно, но для этого надо быть ЭКСПЕРТОМ в обоих системах. Ты знаешь в каком компоненте находится код движка СУБД? А если ты захочешь подправить парочку прагм в движке, ты это сделать в Дельфях сможешь? А если, не дай бог, понадобиться многопользовательский доступ, ты гарантируешь что все нужные прагмы будут включены у всех клиентов?
Дело-то не в том, что связку Delphi-SQLite сделать нельзя. Дело в количестве граблей на этом пути.
Большее количество граблей пожалуй только у связки с Visual Basic будет, из-за его любви к OLE. Но даже этот путь проходим. Но он граблист до усрачки... Но проходим...
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38513785
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
White OwlDmitry Arefiev,

Гы... И ты еще спрашиваешь почему я резко против использования SQLite с Дельфями?

Да потому что обе системы это "вещь в себе". Что встраиваемый SQLite, что компонентная Дельфи. Подружить их можно конечно, но для этого надо быть ЭКСПЕРТОМ в обоих системах. Ты знаешь в каком компоненте находится код движка СУБД? А если ты захочешь подправить парочку прагм в движке, ты это сделать в Дельфях сможешь? А если, не дай бог, понадобиться многопользовательский доступ, ты гарантируешь что все нужные прагмы будут включены у всех клиентов?
Дело-то не в том, что связку Delphi-SQLite сделать нельзя. Дело в количестве граблей на этом пути.

Вот Дима точно знает :D Для дельфи есть отличная поддержка эскулайт, и чтобы ею воспользоваться - отнюдь не надо быть экспертом, достаточно уметь немного читать документацию.

Все прочие утверждения тоже далеки от истины. Как будто внутреннее устройство любой другой СУБД можно изучить за час (кстати, а зачем?!). И "прагм в движке" не бывает, как упыря - прагмы это интерфейс конфигурирования и выполняются они точно так же, как обычные SQL запросы. Да, эти таинственные "нужные прагмы" при старте программы устанавливаются непосредственно приложением, вышеназванная проблема совершенно надуманная. В том и смысл, что эскулайт конфигурируется "на лету", не требуется иметь доступ к каким-то системным конфигам и проч.
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38513789
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
PPAНо если вы выберите sqlite - продумайте о бэкапе.
база хранится в файлах и может рассыпаться (даже при работе в WAL-режиме)

у меня в программе идет одно-пользовательский доступ к sqlite базе (объемы 100m-1gb)
но иногда пользователи присылают сообщения о разрушении бд.

...

По статистике собранной за 3 месяца у меня подобное разрушение возникло у 211 различных юзеров (рис 1)

Ну-ну. Эскулайт используется в миллиардах андроид и иос устройств, сотнях миллионах браузеров (все браузеры на основе вебкит), клиентах скайпа и дропбокс и много где еще. Как странно, что все эти миллиарды баз эскулайт исправно работают. Но, разумеется, в глюках вашего софта виноват эскулайт, юзеры, и всемирный заговор :)

P.S. Ваши сообщения об ошибках очень напоминают ситуацию с багом в коллэйшене, используемом в разрушенных индексах. Юзеры у вас, видимо, очень терпеливые, но лучше поправьте, пока не выгнали :)
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38513817
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MBGВсе прочие утверждения тоже далеки от истины. Как будто внутреннее устройство любой другой СУБД можно изучить за час (кстати, а зачем?!). Я когда-то говорил что надо изучать внутреннее устройство за час? Ты какое-то не то между-строчие читаешь.
Я до вас пытаюсь донести простую мысль: Есть традиционные СУБД, есть встраиваемые. Первые описаны во всех учебниках и любой "SQL для идиотов" ориентируется в первую очередь на них. А вот "встриваемость" почти никогда и нигде не рассматривается.

MBGИ "прагм в движке" не бывает, как упыря - прагмы это интерфейс конфигурирования и выполняются они точно так же, как обычные SQL запросы. Да, эти таинственные "нужные прагмы" при старте программы устанавливаются непосредственно приложением, вышеназванная проблема совершенно надуманная.Правда? Надуманная? Тогда объясни каким образом у PPA база умирает так часто?
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38513840
Фотография PPA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MBGPPAНо если вы выберите sqlite - продумайте о бэкапе.
По статистике собранной за 3 месяца у меня подобное разрушение возникло у 211 различных юзеров (рис 1)

Ну-ну. Эскулайт используется в миллиардах андроид и иос устройств, сотнях миллионах браузеров (все браузеры на основе вебкит), клиентах скайпа и дропбокс и много где еще. Как странно, что все эти миллиарды баз эскулайт исправно работают. Но, разумеется, в глюках вашего софта виноват эскулайт, юзеры, и всемирный заговор :)

P.S. Ваши сообщения об ошибках очень напоминают ситуацию с багом в коллэйшене, используемом в разрушенных индексах. Юзеры у вас, видимо, очень терпеливые, но лучше поправьте, пока не выгнали :)

Откуда инфа, что все миллиарды базы работают исправно?
Я статистику стал собирать не так давно и собрана она только для 133443 инсталляций
из них всего 211 оказались с битыми базами.
из этой толпы пока только 2 технически подкованных человека прислали базы данных для анализа.
у меня на компе базы данных битой никогда не было.
но по отзывам, получаемым ранее как правило такое возникает в результате - "Синий экран или Чубайс без UPS".

Вы намекаете, что мой код работы с SQLite кривой и все проблемы из-за него.
возможно это так...
буду благодарен если найдете баг приводящий к разрушению базы - готов обсудить оплату за эту работу.
Код тут
http://code.google.com/p/flylinkdc/source/browse/trunk/client/CFlylinkDBManager.cpp

p.s.
По поводу непотопляемости баз данных это иллюзия
Если бы все было так хорошо, в базах данных не существовало бы команд вроде "PRAGMA integrity_check"

Набираем в гугле
sqlite repair - 560 тыс
sqlite corrupt skype - 1.76 лимона.

Вот даже на хабре есть дока с картинками и скриптами как достать данные из убитой sqlite базы скайпа
http://habrahabr.ru/post/160629/
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38513856
Фотография PPA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MBGP.S. Ваши сообщения об ошибках очень напоминают ситуацию с багом в коллэйшене, используемом в разрушенных индексах. Юзеры у вас, видимо, очень терпеливые, но лучше поправьте, пока не выгнали :)

Вот тут не понял... что за баг и как правится - у меня используется всегд самая последняя версия sqlite?
Хотел встроить в программу автоматический ремонт
вот по такому сценарию
echo PRAGMA integrity_check; | sqlite3.exe FlylinkDC.sqlite
sqlite3.exe FlylinkDC.sqlite .dump > FlylinkDC.sql
sqlite3.exe FlylinkDC-new.sqlite < FlylinkDC.sql

Но тут есть верятность, что не все данные восстановятся
а как это проверить я пока не придумал.
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38514022
Фотография Dmitry Arefiev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White OwlЕсть традиционные СУБД, есть встраиваемые. Первые описаны во всех учебниках и любой "SQL для идиотов" ориентируется в первую очередь на них. А вот "встриваемость" почти никогда и нигде не рассматривается.
Я не думаю, что "SQL для идиотов" научит людей правильно использовать транзакции Firebird. Это реально не самая тривиальная вещь, тем паче для начинающих. Касательно встраиваемости SQLite - ее не нужно изучить во всех аспектах. Рядовым пользователям нужны фичи:
- пользовательские функции;
- пользовательские коллэйшены.
Остальное можно оставить за кадром. Думаю, Delphi программисту научиться использовать эти две фичи через высокоуровневые обертки, дело более простое, чем транзакции Firebird.
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38514130
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White OwlНи то, ни другое.

Потянуть то эти объемы эти базы потянут, но судя по самому вопросу, ты мало что знаешь об этих СУБД и значит будут очень большие проблемы в дальнейшем.
SQLite предназначена для embedded applictions. И требует хорошего знания С для успешной работы.
Firebird поделка Борлнадов и хороша только в связке с Дельфями.
В сумме эти СУБД из очень разных миров и выбирать между ними как между карьерным Камазом и болидом F1 для поездок за хлебом.

Для новичков с большими объемами лучше брать что-то типа Oracle или MS SQL - по ним учебников много. И спецов нанять проще.

совсем не требует. Можно писать, например, на .NET.
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38514137
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
crauseСпасибо за ответы. Ждал целый день.

Главной будет пока SQLite и в процессе буду изучать FireBird , по окончанию выберу что то одно.

одно непонятно: ЗАЧЕМ изучать вчерашний день???

Если это встроенная в приложение база - используйте SQLite.
Если это не встроенная в приложение база, то поставьте сразу PostgreSQL.
Или если не волнуют вопросы лицензий ставьте SQL Server, можно экспресс.
Зато время не будет потрачено.
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38514471
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
PPAОткуда инфа, что все миллиарды базы работают исправно?
Я статистику стал собирать не так давно и собрана она только для 133443 инсталляций
из них всего 211 оказались с битыми базами.
из этой толпы пока только 2 технически подкованных человека прислали базы данных для анализа.
у меня на компе базы данных битой никогда не было.
но по отзывам, получаемым ранее как правило такое возникает в результате - "Синий экран или Чубайс без UPS".

Вы намекаете, что мой код работы с SQLite кривой и все проблемы из-за него.
возможно это так...
Код тут
http://code.google.com/p/flylinkdc/source/browse/trunk/client/CFlylinkDBManager.cpp


Глянул мельком исходник... это всерьез используется в продакшене? Как же тут битым базам не появляться:
Код: sql
1.
pragma_executor("journal_mode=MEMORY");



Еще один источник проблем - использование файловой системы FAT/VFAT. Старая, дерьмовая, а все еще используется местами.

P.S. Некошерный код, однако:

Код: plaintext
1.
2.
3.
4.
5.
string l_sql = "pragma ";
		l_sql += l_db_name[i];
		l_sql += '.';
		l_sql += p_pragma;
		l_sql += ';';


Используйте строку с символами подстановки, а это... безобразие лучше убрать и никому не показывать. Отсутствие экранирования имен баз/таблиц - плохой подход даже при использовании статичного набора имен (при дальнейших модификациях кода легко можете забыть, что значения никак не проверяются, такой код потенциально опасен). См. http://sqlite.org/c3ref/mprintf.html (аналогичные интерфейсы также есть во всех языках программирования).
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38515138
crause
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тут проскочило сообщение, "Использую всегда свежую базу", это как так происходит?

Это при выходе обновлений, скачиваете длл, и пересоздаете базу с таблица и производите запись всех данных?
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38515291
Фотография PPA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MBGГлянул мельком исходник... это всерьез используется в продакшене? Как же тут битым базам не появляться:
Код: sql
1.
pragma_executor("journal_mode=MEMORY");




if (g_DisableSQLiteWAL || BOOLSETTING(SQLITE_USE_JOURNAL_MEMORY))
{
pragma_executor("journal_mode=MEMORY");
}
else
{
pragma_executor("journal_mode=WAL");
}

Эта функция по дефолту отключена и добавлена по просьбе владельцев SSD дисков
они по монитору вычислили, что журнал на диск дает лишнюю нагрузку по записи на их диск
при этом потеря базы для них не критична. (как правило это технически грамотные юзера)
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38515293
Фотография PPA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
crauseТут проскочило сообщение, "Использую всегда свежую базу", это как так происходит?
Это при выходе обновлений, скачиваете длл, и пересоздаете базу с таблица и производите запись всех данных?

dll у меня нет и все линкуется статически
http://sqlite.org/amalgamation.html
и пересозданий таблиц конечно тоже нет.
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38518219
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если ещё актуально, то я за Firebird.
Больше возможностей и больше свободы.
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38523501
AlBor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11Если ещё актуально, то я за Firebird.
Больше возможностей и больше свободы.

Поддержу.
Для начинающего более чем достаточно, бесплатно, в отличие от MSSQL, Oracle etc.
Хорошо документирована, все что нужно есть.
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38524219
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11Если ещё актуально, то я за Firebird.
Больше возможностей и больше свободы.

а можно немного про возможности и свободу? ;-)
и по сравнению с чем?
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38525266
Фотография PPA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlBorДля начинающего более чем достаточно, бесплатно, в отличие от MSSQL, Oracle etc.
Хорошо документирована, все что нужно есть.

Oracle XE 11 есть бесплатная с лимитом 11 гиг (у 10 XE 4 гига).
При хорошей нормализации модели можно много запихнуть.
Бонусы
- Заказчик может понтоваться \m/ на конференциях, что их система на крутой базе, а не на каком-то бесплатном говне. :)
- Начинающий разработчик получит опыт и солидную запись в резюме.

От MS и IBM DB2 так-же есть халявные express-базы.
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38525972
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PPAБонусы
- Заказчик может понтоваться \m/ на конференциях, что их система на крутой базе, а не на каком-то бесплатном говне. :)
- Начинающий разработчик получит опыт и солидную запись в резюме.
- Никакой техподдержки и обновления. Начинающий разработчик получит незабываемый опыт проктостоматологии для обхода многочисленных ORA-0600.
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38526252
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovPPAБонусы
- Заказчик может понтоваться \m/ на конференциях, что их система на крутой базе, а не на каком-то бесплатном говне. :)
- Начинающий разработчик получит опыт и солидную запись в резюме.
- Никакой техподдержки и обновления. Начинающий разработчик получит незабываемый опыт проктостоматологии для обхода многочисленных ORA-0600.Не смешите мои тапочки.
Как будто тот самый начинающий разработчик не будет получать аналогичное количество ошибок при работе с любой другой базой.
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38526648
Фотография PPA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov Никакой техподдержки и обновления. Начинающий разработчик получит незабываемый опыт проктостоматологии для обхода многочисленных ORA-0600.

XE - редакция выпускается на терминальных версиях Oracle.
львиная доля багов там отсутствует + всякие сложные фичи из-за которых 600-тые валятся из XE редакции вырезаны.
начинающему разработчику нужно постараться написать экзотический код, приводящий к ORA-600

Обновлений конечно не хватает - не понимаю зачем ораклисты так категорично сделали
ведь простейшие фиксы падений можно было бэкпортить
- при автоматизации сборки дистрибутива XE для этого небось нужно 1-2 Индуса :)

А поддержка - от нее пользы особой нет кроме доступа в металинк.
продуктивные 7x24 базы DBA боятся и не трогают даже если вышло 100 хотфиксов.
за все время работы в oracle ORA-600 всегда обходили переписыванием алгоритма на альтернативный.
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38527234
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlBorX11Если ещё актуально, то я за Firebird.
Больше возможностей и больше свободы.

Поддержу.
Для начинающего более чем достаточно, бесплатно, в отличие от MSSQL, Oracle etc.
Хорошо документирована, все что нужно есть.

я уже писал выше... вы в курсе, что у IBM, Oracle, MS - есть бесплатные серверы, хоть и сограничениями, но они существуют.
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38542713
crause
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Первой моей базой после этой темы оказалась SQLite, изучил, поработал, набил немного руку, понял как это вообще.
Раньше вообще БД не признавал, и думал никогда не придется с ними работать. Ошибался и очень ))) Классная вещь.
Скорее всего в дальнейшем и в каких-то проектах буду использовать FireBir, как стану свободнее пощупаю и ее.

Сейчас для коммерческого проекта выбрал PostgreSQL, она была установлена с софтом который ее и использует.
Или стоило вместо PG выбрать MS SQL????

Oracle )) Что такое страшное это ORA-600? можно в двух словах и доходчиво.
...
Рейтинг: 0 / 0
Выбор между SQLIte и FireBird
    #38542966
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
crauseOracle )) Что такое страшное это ORA-600? можно в двух словах и доходчиво.
http://www.orafaq.com/wiki/ORA-00600
Читай пункты 2 и 3 до полного просветления...
...
Рейтинг: 0 / 0
40 сообщений из 40, показаны все 2 страниц
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Выбор между SQLIte и FireBird
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]