|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
27.02.2009, 15:56 | #1 |
Пользователь
Регистрация: 29.10.2008
Сообщений: 20
|
Сортировка и поиск прямо в файле
Вообщем пишу лабу по поиску и сортировкам в C++ Builder. Там создается БД(просто бинарный файл из структур). Сами методы сортировки и поиска я понимаю. В самом пояснении к лабе написано:
Работа с базами данных может быть организована двумя способами: 1. Внесение изменений и поиск осуществляется прямо на диске, используя спецефическую технику работы со структурами в файлах... 2.Считывание сначало всей базы(или необходимой ее части) в массивы структур... Как релизовать второе я понимаю, но как производить поиск и сортировку прямо в файле? Если кто-нибудь с этим встречался с этим, то подскажите основную мысль или дайте ссылку, где почитать. Заранее спасибо |
27.02.2009, 18:23 | #2 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
такой способ предполагает, что вы открываете файл или (если он был открыт ранее) позиционируетесь на начало файла (например, seek(f,0) ) и затем осуществляете последовательное чтение ПО ОДНОЙ ЗАПИСИ - обрабатываете эту запись(например, сравниваете со строкой поиска, в зависимости от результатов сравнения выполняете какие-то действия), читаете следующую запись и т.д. При таком подходе размер файла практически неограничен (кстати, реальные СУБД всегда используют именно такой подход, только для ускорения (как Вы понимаете, слабое место такого подхода - очень низкая скорость обработки данных) используются индексы - это специальные файлы/структуры, позволяющие обращаться напрямую (или перебирать) только подходящие записи).. Извините, если объяснил путанно - спрашивайте, постараюсь растолковать свою мысль (если что-то я не смог внятно выразить..)... |
|
27.02.2009, 18:48 | #3 |
Пользователь
Регистрация: 29.10.2008
Сообщений: 20
|
Вроде все понятно. Только не очень понял про индексы, хотя думую что они мне не нужны,так как поиск мне надо релизовать линейный. Спасибо за помошь
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Поиск в файле | Zandrey | Microsoft Office Excel | 8 | 05.09.2008 12:23 |
поиск в файле | Elm0 | Паскаль, Turbo Pascal, PascalABC.NET | 14 | 07.06.2008 22:41 |
Сортировка в текстовом файле | Isthmus | Паскаль, Turbo Pascal, PascalABC.NET | 18 | 01.05.2008 20:46 |
Поиск в файле | asale | Microsoft Office Excel | 1 | 15.05.2007 23:33 |