|
|
|
Стою перед выбором Ms Access XP или VB6
|
|||
|---|---|---|---|
|
#18+
Моя задача разработать базу данных агенства брачных объявлений. Работать с программой будет один человек. В базе будет до 50000 записей. Надо еще предусмотреть хранение фотографий. На разработку дали 2,5 месяца. Сейчас стою перед выбором на чем разрабатывать. Либо на Ms Access XP + DAO 3.51 либо на VB6 + ADO Хотя мне кажется VB6 +DAO тоже неплохая связка. Главное в программе - это высокое быстродействие (при поиске например) Хотел бы спросить, по производительности что повыше DAO или ADO ?В Access много удобных вещей , которые нужны чисто для БД. Хорошо знаком с DAO, а c ADO не очень. Мне кажется на VB6 будет побольше проблем. Но заказчик хочет, чтобы интерфейс программы был красивым и привлекательным. В основном программа решает задачу хранения и поиска нужной информации. Я думаю для хранения данных можно использовать базу Ms Access (если останавлюсь на VB6 ). Ребята , подскажите . Буду рад за любой совет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 11:55 |
|
||
|
Стою перед выбором Ms Access XP или VB6
|
|||
|---|---|---|---|
|
#18+
Делай на том, что лучше знаешь. АДО лучше (удобней) использовать при многопользовательской работе (по моему мнению!), а на локальной бд - пофиг. И вообще, производительность будет зависить от граммотного построения стурктуры БД и кода. Библиотеки доступа особой роли играть не будут /в данном случае/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 12:29 |
|
||
|
Стою перед выбором Ms Access XP или VB6
|
|||
|---|---|---|---|
|
#18+
2 Senin Viktor Спасибо.Очень важное замечание.Возьму VB6+DAO. Еще вопрос у меня есть. Как осуществить грамотно поиск в поле базы данных по слову? Ну т.е. будет у меня поля типа memo и в нем будет например информация о увлечениях и хобби клиента. Ну может быть несколько предложений. Например пользователь набирает слово "Животные" и программа вываливает ему кучу записей где в определенном поле встречается это слово. Это поиск сложный, но вот как раз то он и нужен . Как здесь поступить грамотней? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 12:42 |
|
||
|
Стою перед выбором Ms Access XP или VB6
|
|||
|---|---|---|---|
|
#18+
Я бы предложил так: завести дочернюю таблицу и хранить в ней все слова (кроме так наз. стоп-слов, по которым поиск не делается из-за их большой частотности) из полей Memo основной таблицы. Например: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. В дочерней таблице делаются индексы. Кроме того, есть отдельная проблема - составление всех форм слова. Чтобы при заданном слове рыбалка составлялся примерно такой селект: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 12:56 |
|
||
|
Стою перед выбором Ms Access XP или VB6
|
|||
|---|---|---|---|
|
#18+
2 Владимиру Санычу Интересно очень. А как пользователь базы будет информацию вводить? Ну т.е он берет и вводит в поле несколько предложений? А программа берет и расчленяет приложение на отдельные фразы и закидывает расчлененное предложение в несколько записей подчиннённой таблицы ? Иль не так я понял? Просто с таким видом поиска не встречался, а сейчас заказчик дал понять что он будет основным. Владимир Саныч И поиск будет производиться в подчиненной таблице по фразе? Так? И найдя скажем слово выйдем на индекс основной таблицы ? Мне эта идея очень нравится! Здорово! ТОлько вот в базе будут записи тысячей клиентов,если просто предположить что предложения в мемо полях будут короткими, то записей в подчиненной таблиц будет в несколько раз больше.Намного больше. Подтвердите пожалуйста то, что я правильно понял ваш важный совет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 13:16 |
|
||
|
Стою перед выбором Ms Access XP или VB6
|
|||
|---|---|---|---|
|
#18+
>Как осуществить грамотно поиск в поле базы данных по слову? Грамотного поиска по Мемо-полям не будет. Если расматривать увлечения, то проще завести таблицу с наименованиями увлечений, и заполнять анкету только из этого списка (есно, первое время список надо будет постоянно пополнять, но это быстро закончиться - ибо все увлечения будут сводиться к "секс, нарокотики и рокн-н-рол" :) Тогда нужная выборка будет строиться элементарно и самым быстрым образом. Но если, такая схема не подойдет (а это очень печально с точки зрения теории БД), то остаються извраты, типа предложенного Санычем, (можно еще парочку придумать для оптимизации поиска в Мемо-полях). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 13:21 |
|
||
|
Стою перед выбором Ms Access XP или VB6
|
|||
|---|---|---|---|
|
#18+
авторА как пользователь базы будет информацию вводить? Ну т.е он берет и вводит в поле несколько предложений? А программа берет и расчленяет приложение на отдельные фразы и закидывает расчлененное предложение в несколько записей подчиннённой таблицы ? Иль не так я понял? Да, все верно. Только не на отдельные фразы, а на отдельные слова. авторИ поиск будет производиться в подчиненной таблице по фразе? Так? И найдя скажем слово выйдем на индекс основной таблицы ? Да, только не по фразе, а по слову. авторТОлько вот в базе будут записи тысячей клиентов,если просто предположить что предложения в мемо полях будут короткими, то записей в подчиненной таблиц будет в несколько раз больше.Намного больше. Но общий объем данных увеличивается всего в 2 раза. Каждая фраза хранится дважды: и в самом Memo (для показа на экране), и в расчлененном виде во второй таблице (для поиска). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 13:25 |
|
||
|
Стою перед выбором Ms Access XP или VB6
|
|||
|---|---|---|---|
|
#18+
Eternal писалТОлько вот в базе будут записи тысячей клиентов,если просто предположить что предложения в мемо полях будут короткими, то записей в подчиненной таблиц будет в несколько раз больше.Намного больше. Тю В русском языке не так уж много слов Одна таблица - с объявлениями, вторая таблица - со словами, причем не всеми словами русского языка, а только теми, которые встречаются в объявлениях. Связь многие-ко-многим - еще один таблиц. Вспомогательная таблица с расчлененкой фразы поиска. При наличии связей и индексов поиск летать будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 13:25 |
|
||
|
Стою перед выбором Ms Access XP или VB6
|
|||
|---|---|---|---|
|
#18+
А совет Виктора тоже полезен. Сделать для заполнения как можно больше полей в виде кодов с комбобоксами, а не только в виде свободного текста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 13:27 |
|
||
|
Стою перед выбором Ms Access XP или VB6
|
|||
|---|---|---|---|
|
#18+
И совет Лоха тоже к месту. Вместо хранения слов хранить их коды, соответствующие кодам слов в третьей таблице (словаре). Правда, все равно будет много слов, которые в словаре не найдутся (например, все слова, написанные с ошибками), и их придется хранить так, как я предложил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 13:29 |
|
||
|
Стою перед выбором Ms Access XP или VB6
|
|||
|---|---|---|---|
|
#18+
2 Senin Victor Ясно. Поговорю сегодня с заказчиком. Действительно наделать полей со списками и оттуда чтобы пользователь выбирал.Ну а если нет нужного увлечения/ хобби , то дать возможность пользователю определять их в отдельной таблице. А если заказчик пошлет и скажет так не пойдет? Ладно поговорю об этом вопросе с ним. 2 Лоху Позорному При каком количестве записей MS Access начинает "загибаться/тормозить"? (при использовании индексов имею ввиду) Я например замечал тормоза при 200 000 записей. Понятно , что зависит от типа действий с записями , но все таки? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 13:37 |
|
||
|
Стою перед выбором Ms Access XP или VB6
|
|||
|---|---|---|---|
|
#18+
2 Саныч Зато после расчленения можно будет а) привести слова к одной форме (падежу) б) выкинуть мусор типа предлогов 2 Eternal При каком количестве записей MS Access начинает "загибаться/тормозить"? (при использовании индексов имею ввиду) Ну возьми и проверь. 1. Берешь одну табличку, забиваешь ее идентификаторами от 1-го до хера (например до 500000). Называешь табличку "объявления" 2. Берешь вторую табличку, забиваешь ее идентификаторами от 1 до например 1000. Называешь табличку "ключевые слова" 3. Берешь 3-ю табличку, забиваешь ее случайными пересечениями из расчета например 10 ключевых слов на одно объявление. Называешь таблицу "связь многие-ко-многим" 4. Между этими тремя таблицами строишь связи. 5. Берешь 4-ю табличку, кидаешь в нее пяток идентификаторов из второй. Называешь табличку "расчлененная фраза для поиска" 6. Смотришь насколько быстро выполняется джойн между этими четырмя таблицами в зависимости от значения "до хера" из п.1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 14:01 |
|
||
|
Стою перед выбором Ms Access XP или VB6
|
|||
|---|---|---|---|
|
#18+
Спасибо за замечания. Для себя сделал несколько полезных выводов. По поводу интерфейса. Все равно думаю на Ms Access сделать быстрей можно и с меньшими усилиями чем на VB6. И вопрос отсюда. Я знаю , что возможно скрыть родительское окно MS Access, но можно ли сделать так , чтобы форма занимала полный экран? Есть такая API функция? И вот еще в базе должны торчать фотографии клиентов. Я понимаю , что хранить их в поле OLE не целесообразно. Размер базы увеличится до неприличия. Как же лучше поступить? Хранить графические файлы в отдельном каталоге и привязывать их к соответсвующим записям? Как осуществить привязку в таком случае? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 14:17 |
|
||
|
Стою перед выбором Ms Access XP или VB6
|
|||
|---|---|---|---|
|
#18+
Хранить графические файлы в отдельном каталоге и привязывать их к соответсвующим записям? Как осуществить привязку в таком случае? открой учебную базу Борей, там есть над чем поучится :) и в частности про фотки .... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 14:21 |
|
||
|
Стою перед выбором Ms Access XP или VB6
|
|||
|---|---|---|---|
|
#18+
2 Артист Смотрел я "Борей". Там можно выбрать файл графический , а в поле БД хранится путь к нему. Можно использовать вариант оттуда, но может другие есть варианты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 14:24 |
|
||
|
Стою перед выбором Ms Access XP или VB6
|
|||
|---|---|---|---|
|
#18+
2 Лох: Привести слова к одной форме не получится. Слово простой может оказаться: формой глагола простоять, существительным (простой оборудования), прилагательным (простой как три копейки). Поэтому лучше делать наоборот: хранить все слова так, как они введены, а при поиске проверять как можно больше возможностей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 14:26 |
|
||
|
Стою перед выбором Ms Access XP или VB6
|
|||
|---|---|---|---|
|
#18+
авторЯ знаю , что возможно скрыть родительское окно MS Access, но можно ли сделать так , чтобы форма занимала полный экран? Есть такая API функция? Private Sub Form_Open() DoCmd.Maximize End Sub авторИ вот еще в базе должны торчать фотографии клиентов. Я понимаю , что хранить их в поле OLE не целесообразно. Размер базы увеличится до неприличия. Как же лучше поступить? Хранить только название файла (и путь). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 14:27 |
|
||
|
Стою перед выбором Ms Access XP или VB6
|
|||
|---|---|---|---|
|
#18+
2 Саныч >Сделать для заполнения как можно больше полей в виде кодов с комбобоксами, а не только в виде свободного текста. 2 Eternal > Действительно наделать полей со списками и оттуда чтобы пользователь выбирал. Не надо много полей со списками - надо 1 подчиненую форму в котором 1 поле-со-списком :) Таким же макаром сделать отбор нужных качеств кандидата >Ну а если нет нужного увлечения/ хобби , то дать возможность пользователю определять их в отдельной таблице. Не в другой, а той же где храняться все хобби. С проверками на частичное совпадение фразы с уже введеными (в инете есть алгорит, реализующий не четкое сравнение - ссылку не найду, но где0то на сайтах по Акесу /в т.ч./) Нужно, что бы исключить оффографиические ошибки и созвучные слова. Правда остаются слова-синонимы (кошка, киска, мурка) - как с ними быть? Пока только ручная правка редактора (Саныч, ты же редактор? Бери халтуру! ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 14:33 |
|
||
|
Стою перед выбором Ms Access XP или VB6
|
|||
|---|---|---|---|
|
#18+
Я не редактор, я корректор. Будучи корректором и программистом одновременно, понимаю, насколько опасно полагаться на программы типа спеллеров, переводчиков и т.д.\r \r Вот пример:\r \r /topic/29283#177550 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 14:38 |
|
||
|
Стою перед выбором Ms Access XP или VB6
|
|||
|---|---|---|---|
|
#18+
сделать в слове оффографиические сразу 3 ошибки? Вы уж простите мне мою безграммотность. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 14:38 |
|
||
|
Стою перед выбором Ms Access XP или VB6
|
|||
|---|---|---|---|
|
#18+
Там не 3, там 2. И обе являются описками. Неграмотность - это там, где ты углядел 3-ю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 14:41 |
|
||
|
Стою перед выбором Ms Access XP или VB6
|
|||
|---|---|---|---|
|
#18+
2 Senin Victor так этот алгоритм ищет по первым словам предложения или по вхождению слова в любом месте предложения? Надо поискать мне ! Это интересно. 2 Владимиру Санычу Есть. Форма на столе в полную мощь закрасовалась. Но при сворачивании она не поступает на панель задач , а торчат кнопки на поверхности рабочего стола. Но это думаю не устранить. MDI все таки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 14:41 |
|
||
|
Стою перед выбором Ms Access XP или VB6
|
|||
|---|---|---|---|
|
#18+
ещё как поступает , ты ж не настроил из главного окна базы Tools->Options->View->Windows in Taskbar галку поставь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 15:17 |
|
||
|
Стою перед выбором Ms Access XP или VB6
|
|||
|---|---|---|---|
|
#18+
2Саныч >Там не 3, там 2. И обе являются описками. Неграмотность - это там, где ты углядел 3-ю. оффографиические оРффографиические Две описки, 1 ошибка :) 2Eternal >так этот алгоритм ищет по первым словам предложения или по вхождению слова в любом месте предложения? Не помню на счет предложений (но любое предложение можно разбить на слова). Алгоритм считает слова Вася,Ва з я, В о ся равными друг другу (как и Вадя) (если, есно, выставить соответствующие настройки степени сравнения) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 15:31 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32342104&tid=1677869]: |
0ms |
get settings: |
9ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
150ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
84ms |
get tp. blocked users: |
2ms |
| others: | 214ms |
| total: | 501ms |

| 0 / 0 |
