Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.05.2011, 22:36   #11
yuran111
Пользователь
 
Регистрация: 28.03.2011
Сообщений: 33
По умолчанию

мне просто интересно, в акцессе том же просто базы хранятся в таблицах в самой программе и программа постоянно растет в объеме. ну и с этих данных получаем рекордсеты и строим к ним запросы, если я правильно выражаюсь. а в делфи наверно данные нельзя накапливать в самой программе, а надо хранить в стороне, вопрос в каком виде? текстовые файлы или какие другие файлы или еще как? вопрос может и глупо звучит, но смысл можно понять. я понимаю что можно по разному, но как правильнее или рациональнее что-ли? главное правильный путь выбрать, а как рекордсет этот создать и фильтровать я потиху разберусь.
yuran111 вне форума Ответить с цитированием
Старый 07.05.2011, 22:40   #12
yuran111
Пользователь
 
Регистрация: 28.03.2011
Сообщений: 33
По умолчанию

ну как хранить в базе данных ado например, что-то я не понимаю. это надо стороннюю прогу использовать что-ли? и ado и bde это просто разные форматы хранения данных (разные программы?)
yuran111 вне форума Ответить с цитированием
Старый 07.05.2011, 22:51   #13
ReportCube
Форумчанин
 
Аватар для ReportCube
 
Регистрация: 11.03.2011
Сообщений: 426
По умолчанию

ADO - доступ к данным. Данные могут храниться в базах данных, в текстовых файлах, в табличном редакторе Excel - это зависит от объёма данных, количестве пользователей, потребностей, ну и денег...
ReportCube вне форума Ответить с цитированием
Старый 07.05.2011, 23:26   #14
chertovich
Форумчанин
 
Аватар для chertovich
 
Регистрация: 26.07.2009
Сообщений: 489
По умолчанию

Цитата:
Сообщение от eduard93 Посмотреть сообщение
chertovich с простым стрингом так не прокатит.
Например в Паскале все катило (там видемо резирвировало максимальную длину строки - 255)
Для Делфи нужно в записи указывать размер строки
например
S: string[20];
Видемо по тому, что строка может быть до 2 ГБ
Если в глубине души вы программист, то, следуя своим наклонностям, вы захотите написать кусок кода.
chertovich вне форума Ответить с цитированием
Старый 07.05.2011, 23:31   #15
eduard93
Форумчанин
 
Регистрация: 06.12.2010
Сообщений: 300
По умолчанию

На прошлой странице я упоминал TClientDataSet, он может хранить данные в своем собственном формате. Как подцепить эти данные к своей проге это уже вопрос другой. Можно и все одним файлом сделать, только обычно это не желательно, т к тогда прогу из Program Files без прав админа запустить будет нельзя.
Ado и bde требуют установки в системе дополнительных библиотек. К тому же bde еще и устарел ужасно.

chertovich Старые паскалевские строки в делфи называются shortstring, плюс еще специальная опция компилятора есть.

Последний раз редактировалось eduard93; 07.05.2011 в 23:33.
eduard93 вне форума Ответить с цитированием
Старый 08.05.2011, 02:21   #16
chertovich
Форумчанин
 
Аватар для chertovich
 
Регистрация: 26.07.2009
Сообщений: 489
По умолчанию

Цитата:
Сообщение от eduard93 Посмотреть сообщение
chertovich Старые паскалевские строки в делфи называются shortstring, плюс еще специальная опция компилятора есть.
И что? я об этом не спрашивал
Если в глубине души вы программист, то, следуя своим наклонностям, вы захотите написать кусок кода.
chertovich вне форума Ответить с цитированием
Старый 08.05.2011, 05:33   #17
yuran111
Пользователь
 
Регистрация: 28.03.2011
Сообщений: 33
По умолчанию

ну понятно примерно. можно данные хранить в акцесе, но он притормаживает с 30000 строк и 200 символов в строке. mysql оказывается надо устанавливать около 25 мегабайт прога - эта? ну так как программка мне нужна эта и еще кому дам, то каждому устанавливать отдельно базу данных не буду. остается наверно писать в файлы. файл за каждый день отдельный, чтобы потом выбирая за разные даты можно было сравнить и получить изменения. TClientDataSet надо наверно использовать для подключения к текстовым файлам. получения из этих файлов рекордсета через запрос sql - и отображения в dbgrid. ну как-то так надо действовать наверно. может напутал чего? вообщем пока я беру 2 файла и сравниваю их строковыми функциями на изменения - уходит 7 минут на это - вот что мне не нравится и по товару отфильтровать тоже не так просто в стринггрид оказалось.
yuran111 вне форума Ответить с цитированием
Старый 08.05.2011, 10:44   #18
ReportCube
Форумчанин
 
Аватар для ReportCube
 
Регистрация: 11.03.2011
Сообщений: 426
По умолчанию

Пишите в личку - поможем
ReportCube вне форума Ответить с цитированием
Старый 08.05.2011, 18:44   #19
eduard93
Форумчанин
 
Регистрация: 06.12.2010
Сообщений: 300
По умолчанию

Идея создавать отдельные базы на каждый день неудачная. Лучше добавить в базу поле "дата", и фильтровать по этому полю. Что касается конкретной технологии, то тут кроме вас никто не знает, что вам нужно. Пробуйте, выбирайте. Возможно 25Мб это не так уж и много.
eduard93 вне форума Ответить с цитированием
Старый 08.05.2011, 20:20   #20
yuran111
Пользователь
 
Регистрация: 28.03.2011
Сообщений: 33
По умолчанию

т е я об этом думал чтоб не забивать по 5 мегабайт на каждый день новой слегка измененной на 200-500 строк базой можно добавлять дату поступления новых товаров, т е в этих 200-500 строках будет стоять новая дата, но мне тогда надо как-то вытянуть за сегодня и предыдущий день- сразу сравнить и к измененным добавить сегодняшнюю дату, а у старых оставить старую дату. так наверно и накапливаться не будет ничего и по дате отфильтровать поступления можно - идея правильная, только строковыми функциями эта сортировка в стринггриде у меня до 10 минут занимает, а если sql запросом сравнивать по первым 20 символам строки - это заметно быстрее будет или из-за того, что именно первые 20 символов строки надо сравнивать - то тоже долго? и как этот sql запрос для сравнения двух рекордсетов на изменение именно первых двадцать символов каждой строки выглядит. ну и добавить сегодняшнюю дату к выбранным записям может кто напишет, если это не трудно. в каждой строке 5 полей - почему сравниваю по 20 символам - потому что первое поле не меняется - это 6 цифр, а во 2 поле в конце иногда появляется-" (в\с)" - знак того что товар на переоценке, третье поле - количество товаров- может уменьшаться, 4- цена - тоже может уменьшаться после переоценки, 5 поле- постоянные адреса десятка магазинов. ну может наглею, много хочу, но что-то застрял. незнаю как поступить, от чего оттолкнуться.
yuran111 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Drupal где лучше хранить доп. модули Alexei91 WordPress и другие CMS 3 13.12.2011 09:26
Где хранить большие изображения в приложении? MyLastHit Общие вопросы Delphi 11 21.12.2010 13:36
как и где хранить изображения? kate158 БД в Delphi 9 20.08.2010 16:37
где хранить рессурсы (Delphi) BanDit Gamedev - cоздание игр: Unity, OpenGL, DirectX 6 25.01.2008 00:50