Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 типизированный файл или БД???  [new]
kirilll
Member

Откуда: Псков
Сообщений: 169
привет!
надо составлять БД, состоящую из одной таблицы, 10 полей (то биш столбцов) и неограниченного числа записей . и соответсвенно нужно читать ее, добалять (только в конец), и осуществлять по ней поиск.
ведь это же проще пареной репы сделать ее как типизированный файл состоящий из моих структур. (среда разработки Delphi)
нужно ли и зачем для этого создавать БД.??
2 мар 04, 17:28    [559937]     Ответить | Цитировать Сообщить модератору
 Re: типизированный файл или БД???  [new]
alex_k
Member

Откуда: krasnoyarsk
Сообщений: 6694
А вдруг задача усложнится?

если уверен что нет, тогда вперед.
только про индексы не забудь, а то у тебя поиск будет шибко медленный
2 мар 04, 17:31    [559950]     Ответить | Цитировать Сообщить модератору
 Re: типизированный файл или БД???  [new]
kirilll
Member

Откуда: Псков
Сообщений: 169
не не усложниться. вернее может усложниться только тем, что объем будет большой и надо будет разбивать на несколько файлов (т.е. создавать новые).
так с чем вперед то с сБД или с тип. файлами??
2 мар 04, 17:33    [559955]     Ответить | Цитировать Сообщить модератору
 Re: типизированный файл или БД???  [new]
mv
Member

Откуда:
Сообщений: 8876
Давай-давай! Структуру ты менять, похоже, никогда не будешь, паковать/повторно использовать "дырки" в базе после удаления - тоже ни к чему, поиск - только последовательный (впрочем, что нам стоит индексы построить, руки - то на месте), сложные выбоки - на фиг, все во вложенных циклах.

А с СУБД работать не пробовал? Ставишь FireBird Embedded - и вперед! (В упакованном виде - всего 800 MB!)
Или хотя бы, раз уж так не любишь СУБД - TClientDataSet компонент. Он почти все сам делает.
2 мар 04, 17:34    [559958]     Ответить | Цитировать Сообщить модератору
 Re: типизированный файл или БД???  [new]
mv
Member

Откуда:
Сообщений: 8876
Ой, не 800МБ, конечно, а 800Кб...
2 мар 04, 17:34    [559960]     Ответить | Цитировать Сообщить модератору
 Re: типизированный файл или БД???  [new]
kirilll
Member

Откуда: Псков
Сообщений: 169
в том то и дело, что с СУБД пока не пробовал (студенты мы ещеЖ)).
2 мар 04, 17:36    [559967]     Ответить | Цитировать Сообщить модератору
 Re: типизированный файл или БД???  [new]
kirilll
Member

Откуда: Псков
Сообщений: 169
удалять записи не надо, поиск только по одному или двум параметрам.
стоп! какие индексы? объясните как это индексы в применении к тип. файлам.?
2 мар 04, 17:38    [559971]     Ответить | Цитировать Сообщить модератору
 Re: типизированный файл или БД???  [new]
mv
Member

Откуда:
Сообщений: 8876
В том-то и дело, что никаких...

А ты, бедняга, даже не знаешь, что без этого - никак при больших (и даже не очень больших, но сложных) выборках.
2 мар 04, 17:39    [559980]     Ответить | Цитировать Сообщить модератору
 Re: типизированный файл или БД???  [new]
mv
Member

Откуда:
Сообщений: 8876
Бедняга, возьми TClientDataSet и юзай, и храни результат в чем угодно...
2 мар 04, 17:40    [559982]     Ответить | Цитировать Сообщить модератору
 Re: типизированный файл или БД???  [new]
kirilll
Member

Откуда: Псков
Сообщений: 169
спасибо конечно, но не бедняга я, блинч!!
2 мар 04, 17:42    [559989]     Ответить | Цитировать Сообщить модератору
 Re: типизированный файл или БД???  [new]
Urri
Member

Откуда: Москва
Сообщений: 2693
А никто не говорил про выборки ;-)))
Тем более большие и сложные ;-)))
А если поиск можно привязать к физическому порядку следования записей (и этого будет достаточно), то и индексы становятся не нужны ;-)))
Так что все зависит от задачи. Не нужна СУБД - ну, значит, и не нужна. Как станет нужна, можно данные будет и сконвертнуть ;-)))
2 мар 04, 17:45    [559997]     Ответить | Цитировать Сообщить модератору
 Re: типизированный файл или БД???  [new]
mv
Member

Откуда:
Сообщений: 8876
Блинч, возьми TClientDataSet и юзай...
2 мар 04, 17:45    [559999]     Ответить | Цитировать Сообщить модератору
 Re: типизированный файл или БД???  [new]
kirilll
Member

Откуда: Псков
Сообщений: 169
ага! ага!
Urri спасибо за поддержку .Хе=Хе.
да выборки в основном только по полю дата, которая идет в последовательном порядке
2 мар 04, 17:48    [560006]     Ответить | Цитировать Сообщить модератору
 Re: типизированный файл или БД???  [new]
mv
Member

Откуда:
Сообщений: 8876
Правильно, не нужна. Мы (в 1812 году где-то) с толпой таких же выпускников ВУЗов БД реализовали с пом. типизированных файлов. На Фортране. Все работало. Только пришлось изобретать ... (см. выше) + вопросы синхронизации между юзерами в сети.

Потом Толик книжку по реляционным БД купил.

Купи книжку. (читать - обязательно!)
2 мар 04, 17:48    [560008]     Ответить | Цитировать Сообщить модератору
 Re: типизированный файл или БД???  [new]
kirilll
Member

Откуда: Псков
Сообщений: 169
to mv/ обязательно куплю..может конечно не сейчас, но потм куплю обязательно.!!

з.ы. все мы когда то были (и будем) выпускниками
2 мар 04, 17:51    [560020]     Ответить | Цитировать Сообщить модератору
 Re: типизированный файл или БД???  [new]
kirilll
Member

Откуда: Псков
Сообщений: 169
люди добрые!
есть же такая удобная ф-ция DlgDirList для ListBoxа.
ну должна же быть такая же удобная ф-ция для Tree???

з.ыэтот вопрос конечно надо было написать в форум по C#, но там похоже уже никого нет. может знает кто?
2 мар 04, 18:54    [560154]     Ответить | Цитировать Сообщить модератору
 Re: типизированный файл или БД???  [new]
alex_k
Member

Откуда: krasnoyarsk
Сообщений: 6694
сервер бд решает за темя многие задачи.
например совместный доступ к данным несколькими пользователями.

если ты на _100_ % представляешь себе задачу, то можно использовать типизированный файл.
индексы создать самому(подумай, вообще это не сложно).
в результате у тебя получится мини движок к бд, но он будет удовлетворять твоим условиям, а это главное.

если же ты представляешь задачу не на 100, а хотябы на 90%, будь уверен, в оставшихся 10% окажется столько гемору, что мало не покажется. в этом случае лучьше использовать готовый сервер субд, можно встраеваемый, как mv подсказывает. firebird выглядит достойным кандидатом.

готовый сервер бд писали совсем не дураки и они(не дураки) сделали там большую(если не всю) часть из того что нужно тебе сейчас и еще много того что тебе может пригодится в будущем.
3 мар 04, 04:53    [560540]     Ответить | Цитировать Сообщить модератору
 Re: типизированный файл или БД???  [new]
f_w_p
Member

Откуда:
Сообщений: 1603
Если это реальный проект, за к-рый денюжку платят, то только СУБД. А если типа курсовой, то можно и файл. И с индексами побаловаться. Ничего уж слишком сложного нет в первом приближении. А если файл естественно упорядоченный, то и отдельного индексного файла не надо! Если знаешь что такое бинарный поиск:-)
Тем ни менее теорию БД знать все равно нужно.
3 мар 04, 07:58    [560619]     Ответить | Цитировать Сообщить модератору
 Re: типизированный файл или БД???  [new]
SergSuper
Member

Откуда: SPb
Сообщений: 5488
kirilll, мне в своё время тоже никто не мог объяснить зачем нужен компьютер когда можно просто на калькуляторе посчитать. Между СУБД и типизированным файлом примерно такая же разница. Пока сам не начнёшь серьёзные задачи решать - не поймёшь.
3 мар 04, 10:34    [560867]     Ответить | Цитировать Сообщить модератору
 Re: типизированный файл или БД???  [new]
Roman Ignatiev
Member

Откуда: Москва
Сообщений: 680
2mv Уж TClientDataset на больших объемах не очень, он же весь файл в память тянет! Конечно, потрудившись, можно загружать порциями, но зачем?
Простые типизированные файлы - самое то, я думаю. Для выбора нужно просто определиться с тем, какие операции будут делаться с записями, а какие - нет.
1. Все записи фиксированной длины
2. Операции: сканирование, поиск по ключу (!), добавление
3. Удаления нет (можно, но тогда придется помечать удаленные записи, предусмотреть упаковку и тд)
Если это так и не изменится, то очень просто сделать типизированный файл с индексом в отдельном файле или просто в нем же.
Впрочем, есть еще COM Storage, к нему тоже надо присмотреться, вдруг подойдет больше? Об этой структуре обычно забывают.
А индекс как построить? Да хотя бы организовать файл с деревом, например, красно-черным (BTree лучше, но сложнее). Статья в RSDN Mag была.
Конечно, можно сделать и просто таблицу dbf, там уже многое сделано
3 мар 04, 11:23    [561033]     Ответить | Цитировать Сообщить модератору
 Re: типизированный файл или БД???  [new]
Roman Ignatiev
Member

Откуда: Москва
Сообщений: 680
Упс. Если просто поиск, без упорядочивания, то вместо индекса идеально хеш подойдет. Забыл :))
3 мар 04, 11:26    [561050]     Ответить | Цитировать Сообщить модератору
 Re: типизированный файл или БД???  [new]
tygra
Member

Откуда: Тверь (Иркутск, Край)
Сообщений: 9997
А можно взять Yaffil Embedded и не париться со всякими файлами.

-- Tygra's --
3 мар 04, 14:33    [561574]     Ответить | Цитировать Сообщить модератору
 Re: типизированный файл или БД???  [new]
Roman Ignatiev
Member

Откуда: Москва
Сообщений: 680
Тигра, откуда такие крамольные мысли?! Почему не MSDE? :)
3 мар 04, 15:26    [561762]     Ответить | Цитировать Сообщить модератору
 Re: типизированный файл или БД???  [new]
kirilll
Member

Откуда: Псков
Сообщений: 169
ей!! какие слова вы употребляете.) дело в том, чт я в БД вообще ни-ни. основная часть программы состоит в управлении контроллером (моя специализация) и в получении от него по PROFIBUS диагностических данных. это данные надо хранить и предоставлять по ним отчет.
самая проблема в том что с тип. файлами программа уже на 90% сделана(((
3 мар 04, 16:33    [561931]     Ответить | Цитировать Сообщить модератору
 Re: типизированный файл или БД???  [new]
Urri
Member

Откуда: Москва
Сообщений: 2693
Так елки! Видывали и мы плоскотекстовые (куда там типизированные ;-)) файлы на нехилых швейцарских спектрометрах. И ничего, работали ;-)
Пока система хранения данных с контроллера есть вещь в себе, все будет ОК и без СУБД. Надо будет интегрироваться - делаем, к примеру, так:
Произвольный файл+интерфейс импорта в СУБД+СУБД
- кто говорит, что это работать не будет? А?
Если для контроллера произвольный файл - копилка, для СУБД он может стать источником. И все в шоколаде ;-)
3 мар 04, 16:57    [561987]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Сравнение СУБД Ответить