Модераторы: LSD

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Сделать БД, дайте совет 
:(
    Опции темы
Fixin
Дата 29.12.2005, 22:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ёжик
***


Профиль
Группа: Комодератор
Сообщений: 1357
Регистрация: 6.1.2004

Репутация: нет
Всего: 18



Нужно сделать БД-шку среднего ур-ня пользования (основной упор на поиск и сеть).

Проблема такая: могу делать все это просто сам "с нуля" - не так уж сложно, если ограничить универсальность, либо учить специальные БД, тк это задание мне - следствие того, что люди, делавшие оболочку до меня не учли возможности создания другой оболочки.

Таким образом, есть два варианта:
1) Делать самому (проблема та же, что и у предшкственников)
2) Учить что-то распространенное.

Второй вариант не подходит из-за недостатка времени (2-3 месяца). Первый - уже объяснил, легкий, но непрактичный.

Сделать нужно "что бы было", а дорабатывать можно "в итоге". Вариант не достойный, но условия таковы.

А теперь вопрос: какой минимум нужен, что бы сделать базу на том, что ныне распространено (стандарт, или как там) и имеет перспективы в будущем.

Я в теме баз на уровне классической "добавить/удалить/найти" на алгоритмическом (не бд-шном) языке, так что не пинайте за топорность.
PM MAIL ICQ   Вверх
Fixin
Дата 29.12.2005, 23:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ёжик
***


Профиль
Группа: Комодератор
Сообщений: 1357
Регистрация: 6.1.2004

Репутация: нет
Всего: 18



Цитата
Денег сколько дашь за разработку ?
Вопрос был конкретный, это не относится, и я не прошу никого ничего за меня делать.
Спасибо, за что есть, но думаю, будут и еще мысли?

PM MAIL ICQ   Вверх
SergeBS
Дата 30.12.2005, 12:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1111
Регистрация: 10.6.2005
Где: Владимир

Репутация: 1
Всего: 22



Fixin
Цитата

Я в теме баз на уровне классической "добавить/удалить/найти" на алгоритмическом (не бд-шном) языке, так что не пинайте за топорность.

1. Если многопользовательская работа, то без SQL-сервера - никуда. Хочешь не хочешь, а изучить придется. Какой конкретно - от задачи зависит. Традиционно для "толстых" масштабируемых систем с прогнозом непрерывного увеличения объема данных применяют MS SQL/Oracle/DB2. Интернет-системы - mySQL. Ну и т.п.
2. Более неудачного решения, чем на VFP делать клиента - не знаю. Три "плюса" по сравнению с чем угодно:
- клиент весит от 3 Мб (это если ничего не делает, дальше-толще). Для сравнения: у меня толстый клиент весит 2.7 Мб и при этом сам (не сервер) печатает где-то 20 разных документов, экспортирует в Excel и Word несколько форматов таблиц и документов, ну и отображает данные из где-то 50 таблиц (в режиме администратора - около 80);
- все, что сложнее таблицы или строки придется делать ручками и сторонними средствами. Например, дерево выбора отдела на предприятии;
- интеграция по построению отчетности (печати документов) - нулевая, т.е. то что может VFP - не понимает никто. И наоборот - затянуть, например, Word-овский документ в VFP можно, но как только сменится версия Word/Win - приехали. И на другую машину перетаскивать этот импорт/экспорт утрахаешься. Если не поставишь всем VFP.
По крайней мере у VFP 6.0 так. Последний 8-й - не смотрел. Неинтересно.
Да, КАМЕНЬ (поскольку никаких обсуждений не видел):
Цитата

Что касаеться VFP, то это пожалуй лучьшее средство на сегодняшиний день для быстрого создания приложений БД

Угу. Если нужно слепить на коленке 3-5 таблиц и юзать в гордом одиночестве. Т.е. вместо
Excel вполне потянет. Короче студентам лабы делать. Во всех остальных случаях - см. выше.

Еще поправка:
Цитата

MSDE ( бесплатная версия MS SQL Server c ограничением на количестов подлючений юзеров ).

Количество подключений - не ограничено. Ограничен сверху суммарный траффик данных между сервером и клиентами. Это если не по бумажке от M$ судить, а на практике.
Версия не бесплатная: если есть лицензия Офиса (от 2000) - можно применять (он в дистрибутиве Офиса отдельно лежит и отдельно устанавливается - типа замаскировали smile ). Или отдельно приобретать надо.
PM MAIL   Вверх
Fixin
Дата 30.12.2005, 20:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ёжик
***


Профиль
Группа: Комодератор
Сообщений: 1357
Регистрация: 6.1.2004

Репутация: нет
Всего: 18



Цитата(SergeBS @ 30.12.2005, 13:03)
SQL/Oracle/DB2. Интернет-системы - mySQL. Ну и т.п.
Последнее подойдет для локалки?

Цитата(SergeBS @ 30.12.2005, 13:03)
Более неудачного решения, чем на VFP делать клиента - не знаю
А что предложите взамен?
Добавлено @ 20:51
И еще: как все это клеится с VC и билдером?

Это сообщение отредактировал(а) Fixin - 30.12.2005, 20:50
PM MAIL ICQ   Вверх
LSD
Дата 31.12.2005, 01:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 24
Всего: 538



Цитата(Fixin @ 30.12.2005, 20:50)
Последнее подойдет для локалки?

Да. Но я бы рекомендовал Intebase/Firebird, т.к. эта СУБД более продвинута в техническом плане: триггеры, хранимые процедуры, транцакции и т.д. все это более развито чем в MySQL. Соответсвенно и писать будет легче.
Для C++ Builder-а и Delphi есть несколько хороших компонентов для работы с IB.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
YurikGL
Дата 2.1.2006, 20:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 196
Регистрация: 5.7.2005
Где: Уфа

Репутация: нет
Всего: 2



Цитата(LSD @ 31.12.2005, 01:45)
Да. Но я бы рекомендовал Intebase/Firebird, т.к. эта СУБД более продвинута в техническом плане: триггеры, хранимые процедуры, транцакции и т.д. все это более развито чем в MySQL. Соответсвенно и писать будет легче.
Для C++ Builder-а и Delphi есть несколько хороших компонентов для работы с IB.


Кроме того, из Delphi можно экспортировать в любой Word или Eccel....
Но для этого надо владеть
1) Языком программирования, на котором будете писать клиента (Delphi, C++ Builder)
2) Языком и инструментарием СУБД. В случае Interbase-а это - IBExpert и знание синтаксиса языка СУБД.

Кстати, если с СУБД не выставляется особых требований, то лучше и проще mySQL взять...
--------------------
 
PM MAIL WWW ICQ   Вверх
chief39
Дата 3.1.2006, 12:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


карманная тигра
***


Профиль
Группа: Участник Клуба
Сообщений: 1631
Регистрация: 20.5.2005
Где: Киев

Репутация: 8
Всего: 77



Цитата(LSD @ 31.12.2005, 01:45)
Для C++ Builder-а и Delphi есть несколько хороших компонентов для работы с IB.

И, насколько помню, с Делфями/Билдером идёт ограниченная версия Interbase, с которой сразу можно потренироваться.
Как ни крути, но борландовские делфобилдеры - самый "легкоусвояемый" продукт на сей день. Все условия для тягания кнопочек, табличек, списочков, репортов. Т.е. для быстрой реализации бизнес логики на толстом клиенте и и визуализации.
А выбор БД - не суть важно, я так понимаю. Таблички одинаково успешно нашлёпаешь и в IB, и в MS, и в MySQL. Если каких-то супер-претензий и конкретики нету - бери IB. Там же и процедуры с триггерами сможешь добавить по мере надобности.


--------------------
Люди - это свечи. Они либо горят, либо их - в жопу!(с)

PM MAIL   Вверх
SergeBS
Дата 10.1.2006, 09:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1111
Регистрация: 10.6.2005
Где: Владимир

Репутация: 1
Всего: 22



Не надо ссориться, горячие финские парни smile.
1. MySQL 5.0 имеет и триггера и хранимки. А транзакции у него в 1900-лохматом году появились. Просто надо знать, что у него может быть 4 разных формата баз. В самом легком транзакций нет. В InnoDB, Berkley - есть. Кстати как временные таблицы юзать то что без транзакций - очень неслабый ход. Тем более что по умолчанию именно в этом формате табличка строится.
2. Зачем InterBase если есть FireBird - то же самое но за бесплатно? И без конфликта с WinXP?
3. Для меня самое неприятное в FireBird: отсутствие Autoincrement полей. А все остальное у нее как у всех остальных. Нет особой разницы.
PM MAIL   Вверх
batigoal
Дата 15.1.2006, 00:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нелетучий Мыш
****


Профиль
Группа: Участник Клуба
Сообщений: 6423
Регистрация: 28.12.2004
Где: Санктъ-Петербургъ

Репутация: 1
Всего: 151



Цитата(SergeBS @ 10.1.2006, 10:51 Найти цитируемый пост)

Для меня самое неприятное в FireBird: отсутствие Autoincrement полей

А это действительно так удобно? Просто я пока работал только с FireBird и Oracle, и нужды в автоинкрементных полях у меня никогда не возникало.


--------------------
"Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли)
ЖоржЖЖ
PM WWW   Вверх
Vit
Дата 15.1.2006, 03:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Vitaly Nevzorov
****


Профиль
Группа: Экс. модератор
Сообщений: 10964
Регистрация: 25.3.2002
Где: Chicago

Репутация: 14
Всего: 207



Цитата(Lamer George @ 14.1.2006, 15:16 Найти цитируемый пост)

А это действительно так удобно? Просто я пока работал только с FireBird и Oracle, и нужды в автоинкрементных полях у меня никогда не возникало.



В общем конечно можно и обойтись, но правильно спроектированная и нормализованная база данных обычно содержит практически в каждой таблице или автоинкремент или GUID


--------------------
With the best wishes, Vit
I have done so much with so little for so long that I am now qualified to do anything with nothing
Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru
PM MAIL WWW ICQ   Вверх
batigoal
Дата 15.1.2006, 11:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нелетучий Мыш
****


Профиль
Группа: Участник Клуба
Сообщений: 6423
Регистрация: 28.12.2004
Где: Санктъ-Петербургъ

Репутация: 1
Всего: 151



Цитата(Vit @ 15.1.2006, 04:24 Найти цитируемый пост)

GUID

Это что?

У нас обычно триггер + секвенс задействуется. В принципе, то же самое.
Добавлено @ 11:46
Нашел - GUID


--------------------
"Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли)
ЖоржЖЖ
PM WWW   Вверх
SergeBS
Дата 16.1.2006, 09:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1111
Регистрация: 10.6.2005
Где: Владимир

Репутация: 1
Всего: 22



Lamer George
[q]
У нас обычно триггер + секвенс задействуется. В принципе, то же самое.
[/q]
Угу. А теперь представь себе, что у тебя 150-200 таблиц. И мастер-детайл. Вот весело-то будет - при каждой вставке по 5-10 триггеров срабатывают... А в ЖарПтице иначе как через триггер и генератор это не сделать. Да еще обратно получить значение - морока. Потому и не нравится.
Насчет автоинкрементных полей - у Т.Тенцера статья была:"Естественные ключи против искусственных ключей". А если проще: чтобы не морочиться с полным перестраиванием индексов при редактировании записи не в пример удобнее иметь это автоинкрементное поле, с его помощью организовывать связи и знать, что главный индекс будет перестраиваться только при удалении записи, а это уж зло неизбежное. Накладные расходы - минимальны. А если еще ввести журналирование с их помощью, то юзер может Иванова превратить в Петрова и т.п. - все равно его злодеяния будут вычислены по этому полю с соответствующими последствиями smile. Достаточно даже просто регулярные бэкапы делать - и все как на ладони будет. Короче, вещь весьма приятная. У меня без этого поля разве что таблицы-связки для "многие-ко-многим". И то не уверен, что так нормально. Все никак не соберусь потестить.
PM MAIL   Вверх
batigoal
Дата 16.1.2006, 11:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нелетучий Мыш
****


Профиль
Группа: Участник Клуба
Сообщений: 6423
Регистрация: 28.12.2004
Где: Санктъ-Петербургъ

Репутация: 1
Всего: 151



Цитата(SergeBS @ 16.1.2006, 10:52 Найти цитируемый пост)

А если проще: чтобы не морочиться с полным перестраиванием индексов при редактировании записи не в пример удобнее иметь это автоинкрементное поле, с его помощью организовывать связи

Вот это я не совсем понял. А почему нельзя то же самое организовать с помощью механизма "триггер+генератор"? Или ты имеешь в виду, что тогда мы можем редактировать primary key, а в случае автоинкрементного поля - не можем?


--------------------
"Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли)
ЖоржЖЖ
PM WWW   Вверх
Fixin
Дата 16.1.2006, 13:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ёжик
***


Профиль
Группа: Комодератор
Сообщений: 1357
Регистрация: 6.1.2004

Репутация: нет
Всего: 18



Ну, оффтоп попер smile
А есть статьи по базам, чтоб хотябы представление иметь "обо всем и сразу". Например разъяснение основных терминов и на кой они нужны. Ну так как?

Это сообщение отредактировал(а) Fixin - 16.1.2006, 13:27
PM MAIL ICQ   Вверх
batigoal
Дата 16.1.2006, 14:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нелетучий Мыш
****


Профиль
Группа: Участник Клуба
Сообщений: 6423
Регистрация: 28.12.2004
Где: Санктъ-Петербургъ

Репутация: 1
Всего: 151



Да не то что статьи, а просто талмуды есть.

А самая простая статья вот: http://forum.vingrad.ru/index.php?showtopic=30912
Добавлено @ 14:02
Хотя пардон, ты не это просил. Там только обзор.


--------------------
"Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли)
ЖоржЖЖ
PM WWW   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Общие вопросы по базам данных"
LSD
Zloxa

Данный форум предназначен для обсуждения вопросов о базах данных не попадающих под тематику других форумов:

  • вопросам по СУБД для которых нет отдельных подфорумов
  • вопросам которые затрагивают несколько разных СУБД (например проблема выбора)
  • инструменты для работы с СУБД
  • вопросы проектирования БД
  • теоретически вопросы о СУБД

Данный форум не предназначен для:

  • вопросов о поиске разлиных БД (если не понимаете чем БД отличается от СУБД то: а) вам не сюда; б) Google в помощь)
  • обсуждения проблем с доступом к СУБД из различных ЯП (для этого есть соответсвующие форумы по каждому ЯП)
  • обсуждения проблем с написание SQL запросов, для этого есть форум Составление SQL-запросов
  • просьб о написании курсовой, реферата и т.п., для этого есть Центр помощи или фриланс биржа
  • объявлений о найме специалистов, для этого есть раздел Объявления о найме специалистов

Если вы не соблюдаете эти правила, не удивляйтесь потом не найдя свою тему/сообщение. ;)


Полезные советы:

При написании сообщения постарайтесь дать теме максимально понятное название. В теме максимально подробно опишите проблему. Если применимо укажите: название базы данных и версии (MySQL 4.1, MS SQL Server 2000 и т.п.); используемых язык программирования; способа доступа (ADO, BDE и т.д.); сообщения об ошибках.

Для вставки кода используйте теги [code=sql] [/code].

Литературу по базам данных можно поискать здесь.

Действия модераторов можно обсудить здесь.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, LSD, Zloxa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | СУБД, общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0708 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.