Надо написать прогу Работы с базой данных. Сначала забить туда данные, отдельно на 3х машинах. потом слить в одну. А потом от туда дергать данные и их обрабатывать....Писать буду на Delphi..Какую СУБД выбрать? Я хотел MySQL....Есть ли по нему нормальная документация на русском.....и вообще что посоветуете?
[Ответ]
DimmaN 15:45 15.09.2006
Вы бы предметную область как-то обозначили, что-ли. Сколько таблиц будет, как с ней работать будут (частота обращений), сколько пользователей? А то может вам и пара тхт-файлов подойдет. Сделаете к ним одбс-профиль и шабаш!
[Ответ]
M@D 16:18 15.09.2006
Будут вбивать на 3х компах отдельно, по частоте обращения - не знаю, я бумал про одну таблицу всего около 50 000 - 70 000 (после слива в одну) записей, в каждой 30 - 40 различных полей (текст, дата......) быстродействие не сильно важно, в разумных пределах конечно )) у txt выборки делать неудобно, да и объемы приличные...
[Ответ]
DimmaN 16:29 15.09.2006
Все равно ничего не понял. Пользователей сколько? У конечной (после слива) базы-таблицы? Будет ли мультиюзерность? Если юзер один - делайте дбф и не парьте моск серверами.
[Ответ]
doXtor 18:02 15.09.2006
M@D, бредите?....... определитесь и поконкретнее плз. DimmaN прав.
[Ответ]
DimmaN 10:44 16.09.2006
doXtor, да ладно, тебе. Все такие были.
M@D, ты напиши сколько юзеров. Еще - какие выборки будут из этой таблицы пусть даже в 100000 записей? И все-таки, написал бы что за задача перед тобой стоИт. Когда одна таблица - ничего ценного в плане идеи там быть не может, так что красть будет нечего [Ответ]
Integrator 16:10 18.09.2006
Сообщение от M@D:
Надо написать прогу Работы с базой данных. Сначала забить туда данные, отдельно на 3х машинах. потом слить в одну. А потом от туда дергать данные и их обрабатывать....Писать буду на Delphi..Какую СУБД выбрать? Я хотел MySQL....Есть ли по нему нормальная документация на русском.....и вообще что посоветуете?
Бери Ораклу не пожалеешь ... все остальное пока детский сад ;-) [Ответ]
DimmaN 16:51 18.09.2006
Integrator, шутки-шутками, а ведь такое на самом деле бывает. Сам сталкивался с програмульками, для которых дбф-а - было бы выше крыши, но нет. Люди пользовали оракал.
[Ответ]
Integrator 17:25 18.09.2006
Кто на что учился ;-) ... в жизни все бывает ... обычно это от не достатка информации ... я понимаю раньше, а щаз ... людям лень даж поисковик запустить ... [Ответ]
Rabbit 20:11 20.09.2006
Сообщение от DimmaN:
Люди пользовали оракал.
А вот я с некоторых пор, везде, где можно использовать дбф, использую firebird... Быстро(программинг) и удобно(СУБД всё таки). И в плане расширяемости приложения тоже перспективы неплохие.
Хотя, я это делаю в основном из-за того, что дбф транзакции не поддерживает...
В любом случае дбф имеет смысл всегда менять на простенькую СУБД, типа firebird, MySql, PostgreSql.
[Ответ]
DimmaN 10:49 21.09.2006
Rabbit, все так, но когда таблица всего одна?! Хотя опять же, автор пропал, ничего про предменую область не сказал.
[Ответ]
Rabbit 18:38 21.09.2006
Сообщение от DimmaN:
все так, но когда таблица всего одна?!
При внезапном отключении питания и одна таблица может быть испорчена. И что тогда? Вот если бы к дбф прикрутить транзакции...
Сообщение от DimmaN:
Хотя опять же, автор пропал, ничего про предменую область не сказал.
Rabbit, в Delphi реализуемы транзакции и для DBF, если midas.dll использовать
Сообщение от : Midas и COM. Советы и Приемы
Автор: Bill Todd
Перевод: Михаил Голованов
Транзакции в настольных базах данных
Если Вы работаете с Paradox или Dbase таблицами, и нуждаетесь в поддержке транзакций, Вы ограничены, потому что единственный уровень изоляции транзакции read uncommited (также грязное чтение). Вдобавок ко всему, невозможно произвести откат при возникновении аварийной ситуации , т.е аварийный отказ может оставлять вашу базу данных в несогласованном состоянии. Однако, если Вы используете ClientDataSet, Вы действительно получаете транзакции и автоматический откат в аварийных ситуациях.
ClientDataSets имеет копию данных в памяти и Вы фактически работаете с локальной копией базы. Вы не будете видеть вставки, удаления или модификаций, сделанных другими пользователями или другими наборами данных в том же самом приложении. Это дает Вам обеспечение изоляции транзакции. Независимо от того сколько раз Вы просматриваете ваши данные, Вы будете всегда видеть снимок данных, с которым Вы начали работать.
ClientDataSet содержит все изменения в памяти в свойстве Delta, пока Вы не вызывете ApplyUpdates. Это означает, что при аварии произойдет откат транзакции, потому что все изменения в Delta будут потеряны. Единственый недостаток в использовании ClientDataSet, то, что аварийный отказ, во время выполнения ApplyUpdates, может все еще оставлять вашу базу данных в несогласованном состоянии. Однако, Если Вы вызываете ApplyUpdates достаточно часто достаточно, чтобы гарантировать, что только несколько записей модифицируются, модификация происходит в течении долей секунды. Это - намного меньшее окно уязвимости, чем использование локальных транзакций, где база данных может находится в несогласованном состоянии с момента первого изменения до проведения или отката транзакции. Для пользователя, вручную вносящего изменения, это время может быть несколько минут.
Возможно, правда, имеет смысл использовать дбф. где про это можно подробно почитать и вообще какими инструментами Делфи лучше пользоваться.....что бы было проще писать запросы
[Ответ]
Rabbit 18:28 22.09.2006
Сообщение от Yandex:
в Delphi реализуемы транзакции и для DBF, если midas.dll использовать
Знаю, но:
Сообщение от Yandex:
аварийный отказ, во время выполнения ApplyUpdates
Очень редко, например если важен размер программы, то можно использовать .DBF + один из методов доступа к нему - ODBC, Jet, OLEDB (так как это уже есть в Windows и дополнительное ПО не требуется [разве что Jet иногда обновлять надо]). Если размер не очень критичен, то думаю стоит выбрать БД - Firebird - размер дистрибутива ~3mb (сравним с BDE, но BDE уже морально устрал и изучать его смысла нет [BDE - можно так же рассматривать как метод доступа]), но в замен получаем много вкусностей, таких как хранимые процедуры, транзации и удобство разработки (Компоненты Delphi + IB Expert ~4mb для создания/редактирования базы).
Сообщение от :
где про это можно подробно почитать
Сначала лучше определиться с выбором БД (зависит от задачи) и методом доступа к ней.
Сообщение от :
вообще какими инструментами Делфи лучше пользоваться.....что бы было проще писать запросы
Запросы проще писать ручками - SQL не такой уж и сложный язык, чтобы пользоваться всякими приблудами. Хотя если БД - Access, то наверно проще выучить там Запросопостроитель.
[Ответ]