Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Дырки, и их заполнение...

1.4K
16 декабря 2001 года
MrPhantom
2 / / 20.06.2000
ТЕРМИНОЛОГИЯ
1) В базе данных бывают таблицы, в них - поля и записи
2) В предметной области объеты, а у них - атрибуты
3) у атрибутов есть объект-хозяин, наименование, значение (значение всегда хранится строкой, длина которой строго фиксирована в пределах БД)

СИТУАЦИЯ
Есть множество объектов предметной области.
Каждый из них описан таблицей, каждой таблице (а значит и объекту) присвоен номер
- ИД типа объекта.
У объектов одного типа может быть заранее неопределенное число атрибутов.
С одним типом объекта работает только один программный обработчик - он точно знает номер типа объекта.

ТАБЛИЦЫ
tAttribute
id Integer Autoincrement
idOwnerType Integer
idAttrName Integer --> tAttrName.id
idAttrValue Integer --> tAttrValue.id

tAttrName
id Integer Autoincrement
id idOwnerType Integer
Name varchar(100)

tAttrValue
id Integer Autoincrement
Value varchar(100)

В конечном варианте система будет засунута в крайне примитивную СУБД - она не поддерживает внешних ключей, например, поэтому делать все надо ручками.

ПРОБЛЕМА
Пользователь выбирает для работы экземпляр объекта,
- ему нужно показать полный! список наименований атрибутов,
зарегистрированных для этого типа объекта.
Кроме того,... в том же списке второй колонкой нужно вывести значения этих атрибутов
(но только там где они заданы, т.е. содержаться соответствующие записи в таблице tAttribute и tAttrValue,
а где таковых нету - там пустую строку, чтоли, нужно вывести)

Т.Е. ТИПА

&quot;Наименование организации&quot; &quot;ЧП Вася Пупкин&quot; <- Знаем
&quot;ИНН&quot; &quot;&quot; <- Не знаем
&quot;Телефон&quot; &quot;45-65-89&quot; <- Знаем

В таблицах тада должны быть записи (таблица про сами организации здесь не при чем, там ничего не должно быть, у нее номер типа объекта 1)
tAttribute
1, 1, 1, 1;
2, 1, 3, 2;

tAttrName
1, 1, &quot;Наименование организации&quot;;
2, 1, &quot;ИНН&quot;;
3, 1, &quot;Телефон&quot;;

tAttrValue
1, &quot;ЧП Вася Пупкин&quot;;
2, &quot;45-65-89&quot;;

Вот такая трабла,... Помогите пожалуйста люди добрые о)


[ Это Сообщение было отредактировано MrPhantom в 2001-12-16 2022 ]
1.4K
18 декабря 2001 года
MrPhantom
2 / / 20.06.2000
Печально отвечать на собственный вопрос...

Ситуацию я правда уже порешил... правда довольно криво (прямее может ваще и не сделат) - из результатов двух запросов программно сливаем данные прямо в форму.

В принципе работает,.. но все-таки хочется делать это одним запросом, ибо тема-то занятная, да и результат выглядит вкусно :о)

Вощем, если кто сообразит как ето сделать - я мыслю местным обитателям будет весьма пользительно
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог