|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
19.12.2012, 11:58 | #1 |
Пользователь
Регистрация: 19.12.2012
Сообщений: 29
|
Проектирование крупных приложений БД
Добрый день, коллеги!
Меня интересует такой вопрос. Есть куча учебников по созданию приложений БД. И в учебниках все получается очень красиво: положили пару компонент на форму, в датасете создали поля, настроили описания и т.д. Положили на форму навигатор, вуаля! Но почему-то нет учебников, по проектированию крупных приложений (и даже средних, трудоемкость, которых вылезает за пару таблиц). Как быть, если имеем в БД с десяток таблиц и кучу форм с лукапами, которые кроме прочего еще должны взаимодействовать между собой? Простой пример. Есть некая таблица, допустим "физ. лица", в которой есть лукапы на другие таблицы. Из разных форм мы ссылаемся на эту таблицу. Например, "сотрудники", "покупатели". Беда в том, что каждый раз, когда нам нужен НОВЫЙ датасет (со своим, независимым курсором), нужно будет заново описывать все поля/лукапы и т.д., что утомляет. Очень бы хотелось иметь некий инструмент, который бы позволял рисовать схему БД, и прямо в этой схеме задавать все параметры (лукапы, названия колонок и т.д.), а при выкладывании датасета на форму, чтобы все свойства заполнялись по этой схеме. Такой подход был бы продуктивным. Я для упрощения работы каждую таблицу кладу в новый датамодуль. Заполняю поля, все настраиваю. И на каждой форме, которой эта таблица нужна програмно создаю этот датамодуль. Но это не выход - очень утомительно создавать дата-модули, да еще и контролировать время жизни каждого. Поделитесь советами, кто как проектирует приложения, посложнее студенческих курсовых? Версия Delphi - XE2 и выше. |
19.12.2012, 12:36 | #2 |
Участник клуба
Регистрация: 23.04.2009
Сообщений: 1,058
|
Имхо как на букашке чертил так и чертил... много чего продумываешь когда от руки простым карандашом рисуешь ... на компьютере как то не творчески получается.
Последнею БД в 30 таблиц нарисовал за день. забил в Ibexpert за 40 минут.
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
|
19.12.2012, 12:47 | #3 |
Пользователь
Регистрация: 19.12.2012
Сообщений: 29
|
Наверно, не совсем корректно выразился. Схема БД уже создана. Т.е. проблемы нарисовать таблички нет. Есть проблема запитать эту БД в Delphi. Ну как выглядит типичный процесс? Положили DataSet на форму. Указали коннекшн, название таблицы и понеслась.. Нужно дважды кликнуть, добавить все колонки из БД, создать поля-лукапы. Потребовалось туже самую табличку добавить - опять кладем dataset, настраиваем в ObjectInspector'е, дважды кликаем по компоненту и делаем РОВНО ТУ ЖЕ САМУЮ работу, которую уже однажды делали. Когда таких таблиц много - поддерживать это безобразие становится утомительно. Вот и вопрос: как быть?
|
19.12.2012, 13:18 | #4 | |
Участник клуба
Регистрация: 23.04.2009
Сообщений: 1,058
|
Цитата:
последнее время вообще stringgrid'om пользуюсь...
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
|
|
19.12.2012, 14:36 | #5 | |
Пользователь
Регистрация: 19.12.2012
Сообщений: 29
|
Цитата:
2) Для чего же в Delphi вообще сделали визуальные компоненты для БД, если их невозможно применять на практике? 3) В датасете не получится ничего не настраивать - как DBGrid узнает, какие есть поля в таблице? 4) Как при таком подходе реализовать работу с лукапами? |
|
19.12.2012, 14:38 | #6 |
Пользователь
Регистрация: 19.12.2012
Сообщений: 29
|
Попробую по другому переформулировать вопрос: визуальное проектирование приложений БД (датасеты, контролы для работы с БД) жизнеспособно? Можно ли не утонув в рутине (и тем самым сведя на нет преимущества визуального проектирования) разрабатывать приложения объемом сложнее, чем курсовые в ВУЗе?
|
19.12.2012, 14:51 | #7 | |
Участник клуба
Регистрация: 19.12.2007
Сообщений: 1,100
|
Цитата:
поэтому пользуюсь исключительно FieldByName\Fields[]\ParamByName\Params[] да и головняка выходит меньше в итоге ... таблицу в DataSet открыл и можно уже работать без проблем
На форуме: Помогаю за спасибо
ICQ\Skype: Это моё личное время ... |
|
19.12.2012, 14:55 | #8 |
Пользователь
Регистрация: 19.12.2012
Сообщений: 29
|
|
19.12.2012, 14:56 | #9 | |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Цитата:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
|
19.12.2012, 14:59 | #10 | |||
Участник клуба
Регистрация: 19.12.2007
Сообщений: 1,100
|
Цитата:
Цитата:
Цитата:
зы. Аватар, +1
На форуме: Помогаю за спасибо
ICQ\Skype: Это моё личное время ... |
|||
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Проектирование БД | Morgusha | SQL, базы данных | 1 | 03.06.2012 10:22 |
Проектирование БД. | lovetolaugh | БД в Delphi | 3 | 15.06.2011 22:08 |
проектирование бд | NieL | Помощь студентам | 1 | 28.04.2011 18:04 |