Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Как бы вы объединили каталоги товаров / 20 сообщений из 20, страница 1 из 1
22.12.2011, 20:34
    #37589819
АНиколаев
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как бы вы объединили каталоги товаров
В молодости суть БД в Access вроде бы освоил. Но теперь тяжело в голове структура создаётся. Суть простая:
1. есть 5 разных печатных каталогов почтовых марок.
2. Общее описание (порядка 10-20 признаков) марок приблизительно совпадает, но не всегда.
3. Нумерация разная в каталогах.
4. в каждом каталоге свой набор разновидностей (подвидов) по многим маркам (почти по любому из признаков).
5. Ни один каталог не является истиной.
6. Название серии, марки и номинал - одинаковы во всех каталогах.
7. Количество основных марок около 10 тыс.шт.

Задача создать структуру, которая объединит 5 каталогов, чтобы можно было сравнивать описание марки в разных каталогах и определять истинность признаков.

Пока в голове одна таблица, в которой будут все каталоги, а каждому признаку своя связанная таблица. Но будут 5 разных связанных таблиц по каждому признаку для каждого каталога.

Делать буду в Access2010. Общую книжку с запросами, формами и таблицами скачал.

Есть excel база по одному из каталогов (который и берётся за основу), таблицу отредактировал так, что перегоняется в Access без ошибок одной таблицей. Анализ таблицы разбивает на связанные не правильно. Подможете?
...
Рейтинг: 0 / 0
22.12.2011, 21:38
    #37589872
andy.s
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как бы вы объединили каталоги товаров
Можно хранить все каталоги в одной таблице, просто некоторые поля для разных типов каталогов будут пустые. Single Table Inheritance вроде как называется.
...
Рейтинг: 0 / 0
22.12.2011, 22:52
    #37589915
SERG1257
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как бы вы объединили каталоги товаров
В лоб
Таблица марки (ID_марки, название серии, марки и номинал )
Таблица для каждого каталога (Нумерация марки в каталоге,ID_марки,10-20 признаков)
АНиколаев сравнивать описание марки в разных каталогах и определять истинность признаковЭто будет делать прикладная программа, а субд предоставит данные
Код: sql
1.
2.
3.
select * from stamps s
left join cat1 c1 on s.stamp_id=c1.stamp_id
left join cat5 c5 on s.stamp_id=c5.stamp_id
...
Рейтинг: 0 / 0
22.12.2011, 23:03
    #37589918
АНиколаев
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как бы вы объединили каталоги товаров
Структурирую (и для себя также). Допустим:
1. У каждой физической марки есть основной вид и есть подвиды.
2. У каждой физической марки есть 10 характеристик
3. Три характеристики можно признать постоянными для всех каталогов и всех подвидов
4. Остальные 7 характеристик могут меняться для основного вида в каждом каталоге (из-за несовершенства каталогов).То есть для одной и той же марки одна и та же характеристика в разных каталогах будет отличаться
-------идеально совпадающие каталоги------------------------------------- не идеальные каталоги по факту
(111) 1111111 1111111 1111111 1111111 1111111 -------- (111) 1111111 1112111 1112111 1111122 2121111

5. Остальные 7 характеристик могут меняться (одновременно все, или по одной, или в сочетании) вводя подвиды

(111) 1111111 1111111 1111111 1111111 1111111 - идеально совпадающие каталоги
(111) 1121111 1121111 1121111 1121111 1121111 - идеально описанные в каталогах подвиды
(111) 1121111 ннннннн 1121111 ннннннн ннннннн - описанные (2) и не описанные (н) подвиды
(111) 1121121 ннннннн 1121111 ннннннн ннннннн - ещё один подвид

Извиняйте, если что-то не логично объясняю. Здесь, наверно, особый склад мышления нужен. И мне его не хватает.
...
Рейтинг: 0 / 0
22.12.2011, 23:25
    #37589937
АНиколаев
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как бы вы объединили каталоги товаров
SERG1257В лоб
Таблица марки (ID_марки, название серии, марки и номинал )
Таблица для каждого каталога (Нумерация марки в каталоге,ID_марки,10-20 признаков)


1. я так понимаю, что в каждой "таблице для каждого каталога" будут повторятся эти "10-20 признаков". То есть, в общем, будет 5 раз по "10-20 признаков" с повторением процентов 80 (по ощущениям). Правда, я даже не понимаю сейчас плохо это или пофиг

2. пока не понимаю, как подвиды для каждого каталога заносить: для каждого каталога у каждого "10-20 признаков" будет связанная таблица "один-ко многим". А как быть с сочетанием подвидов?

И ещё, есть прога в инете StampCAT - это оболочка без наполнения. В демо-версии внутри есть mdb база из 15 пробных записей. Судя по тому, что в этом файле только таблицы без связей и форм,отчётов, запросов, то это разделённая база. Серверная часть ,которой доступна простому Access, а клиентская часть закомпилирована в exe-шник. Вот в этой части я сдаюсь. До такого я никогда не доходил. Но, принципиально, можно из exe-шника вытащить клиентскую часть базы со связями, запросами? Просто, чтоб понять как они спроектировали БД
...
Рейтинг: 0 / 0
23.12.2011, 00:08
    #37589962
SERG1257
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как бы вы объединили каталоги товаров
АНиколаев 1. я так понимаю, что в каждой "таблице для каждого каталога" будут повторятся эти "10-20 признаков". То есть, в общем, будет 5 раз по "10-20 признаков" с повторением процентов 80 (по ощущениям). Правда, я даже не понимаю сейчас плохо это или пофигТо что у доброй половины таблиц повторяется поле ID никого не напрягает. Ну будут совпадать поля типа имя в каталоге, цвет согласно каталогу и т.д. да бог с ним. Не вижу выгоды заморачиваться с объединением в одну таблицу.
АНиколаев пока не понимаю, как подвиды для каждого каталога заноситьА я не понимаю что вы называете подвидом. Пример с описанием помог бы друг друга понять.
...
Рейтинг: 0 / 0
23.12.2011, 09:39
    #37590183
АНиколаев
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как бы вы объединили каталоги товаров
SERG1257 Ну будут совпадать поля типа имя в каталоге, цвет согласно каталогу и т.д.


я имел ввиду, что будут совпадать данные, а не имя поля.

А подвидом называется, например, марка с отличающейся зубцовкой. Например, основная марка имеет зубчики, а подвид этой марки полностью совпадает по рисунку, размеру, цвету, бумаге, но зубцов не имеет. При этом в каталогах она может считаться самостоятельной маркой ( со своим индивидуальным цифровым номером), а может считаться подвидом с присвоение буквенного индекса (например, 136А). Причём в каждом каталоге своя система
...
Рейтинг: 0 / 0
23.12.2011, 14:47
    #37590862
sp
sp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как бы вы объединили каталоги товаров
Данные о марках у вас одни - просто есть куча разных окошек из которых вы на них смотрите - вот и используйте эту парадигму для проектирования! у вас на данные о марках просто вешаются дополнительные таблички с различными классификаторами
...
Рейтинг: 0 / 0
23.12.2011, 14:57
    #37590880
АНиколаев
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как бы вы объединили каталоги товаров
spДанные о марках у вас одни - просто есть куча разных окошек из которых вы на них смотрите - вот и используйте эту парадигму для проектирования! у вас на данные о марках просто вешаются дополнительные таблички с различными классификаторами

не совсем понял мысль. Есть проблема - достоверных данных не существует в структурированном виде. Я пытался их изаносить в эксель. Получается путаница. Это будет следующая проблема - после того как будут между собой сопоставлены данные всех пяти каталогов, необходимо будет составлять ещё одну объективную таблицу, в которую попадут данные при условии, что во всех 5 каталогах характеристика одинаковая или есть фактические измерения на фактической марке (это сложнее, есть марка в СССР, которую продали на аукционе за 800 тыс.долл)
...
Рейтинг: 0 / 0
23.12.2011, 15:07
    #37590912
_мод
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как бы вы объединили каталоги товаров
АНиколаевПри этом в каталогах она может считаться самостоятельной маркой ( со своим индивидуальным цифровым номером), а может считаться подвидом с присвоение буквенного индекса (например, 136А). Причём в каждом каталоге своя система
Это не важно. Все подвиды хранить отдельными строками в одной таблице со ссылкой на основу. А основу хранить там же , но без характеристик.
зы у каждого подвида м.б. своя цена
...
Рейтинг: 0 / 0
23.12.2011, 15:29
    #37590976
АНиколаев
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как бы вы объединили каталоги товаров
_модЭто не важно. Все подвиды хранить отдельными строками в одной таблице со ссылкой на основу. А основу хранить там же , но без характеристик.
зы у каждого подвида м.б. своя цена

То есть предлагаете такую схему:
|Основа|1---->∞|каталоги|1---->∞|подвиды|

Но тогда как сопоставить одинаковые подвиды описанные в разных каталогах?
...
Рейтинг: 0 / 0
23.12.2011, 18:28
    #37591321
SERG1257
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как бы вы объединили каталоги товаров
АНиколаев я имел ввиду, что будут совпадать данные, а не имя поля.Теперь понятно что вы хотите.
Данные по каталогам (каталог 1 считает марку А зеленой, с ним соглашается каталог2, а каталог 3 считает ее красной) хранить все же придется, потому что это внешняя информация. Вы можете добавить в таблицу марок поля: самое_популярное_значение_из_каталогов_для_признака1 ....
и после внесения информации из каталогов включать голосовалку чтобы заполнять эти поля. При этом вы можете не заполнять поля если например нет реального лидера (два каталога считают марку А зеленой, два синей, а пятый воздержался не имеет по ней информации) или нет кворума (инфа есть только в одном каталоге что недостаточно для принятия решения)
Для наглядности и в целях экономии (хотя какая может быть экономия на 10000 записей) можно будет после голосования обнулять значения в каталогах совпадающие с самое_популярное_значение_из_каталогов_для_признака1, но тогда при запросе этой инфы надо будет четко различать - значение пустое потому что оно было обнулено после голосования, значение пустое потому что записи нет в каталоге, значение пустое потому что пустое во входящей информации.

По подвидам: вы должны принять волюнтаристкое решение что есть первичный ключ для марки и склонить к этому решению несогласные каталоги. Например, считать все подвиды самостоятельными марками с дополнительным признаком - номер родительской марки.
...
Рейтинг: 0 / 0
23.12.2011, 18:58
    #37591365
АНиколаев
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как бы вы объединили каталоги товаров
Тогда получается две таблицы:
1.Не изменяемые 3 основных признаков.
2. 5 групп (каталоги) по 7 изменяемых признаков + 1 группа (по результатам голосовалки) из 7 признаков

Подвиды будут самостоятельными марками со своим номером, но при этом сопоставимым между каталогами - это хорошо.
Но тогда не очень понятно зачем Access. В каждом подвиде из 35 ячеек (5 каталогов по 7 признаков) - 30 будут совпадать
...
Рейтинг: 0 / 0
23.12.2011, 19:01
    #37591370
АНиколаев
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как бы вы объединили каталоги товаров
а голосовалка есть в access или это прогруммульку писать надо? Я на бейсике 15лет назад писал, и 10 лет назад в 1С что-то рисовал.
...
Рейтинг: 0 / 0
23.12.2011, 19:18
    #37591396
SERG1257
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как бы вы объединили каталоги товаров
АНиколаев Тогда получается две таблицы:Шесть таблиц.
0 Неизменные данные по марке + самые_популярные_данные_из_каталогов
1-5 данные по марке из каталогов

Данные из каталогов могут заполнятся независимо.
АНиколаев а голосовалка есть в access или это прогруммульку писать надо?
Голосовалка - это процесс обработки необработанной марки из таблицы 0

АНиколаев Но тогда не очень понятно зачем Access.Это вы меня спрашиваете?
АНиколаев В каждом подвиде из 35 ячеек (5 каталогов по 7 признаков) - 30 будут совпадать И кого это напрягает?
...
Рейтинг: 0 / 0
23.12.2011, 19:36
    #37591420
АНиколаев
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как бы вы объединили каталоги товаров
SERG12571-5 данные по марке из каталогов



как подвиды сопоставить между собой тогда можно? В каждой таблице "1-5" марка и подвид сопоставляются таблице 0.
Например, у одной марки в одном каталоге описано два подвида, в другом три подвида. Один подвид встречается и там, и там. Не пойму как сопоставить.
...
Рейтинг: 0 / 0
24.12.2011, 01:53
    #37591737
SERG1257
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как бы вы объединили каталоги товаров
АНиколаев как подвиды сопоставить между собой тогда можно?Если в некоторых каталогах подвид считается отдельной маркой (совсем не связанной с родителем), то проще все подвиды считать отдельными марками. Таблицу 0 дополните характеристиками подвида (с зубчиками, гашеная или еще какие ...). То есть взяв в руки марку (вставляя ее в базу) вы точно должны знать занесена она уже или нет.
Как их сопоставлять - по признакам подвида.
...
Рейтинг: 0 / 0
24.12.2011, 09:51
    #37591777
АНиколаев
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как бы вы объединили каталоги товаров
Если честно, я запутался. Подозреваю, что мы говорим о разном.
Я сейчас хотел бы создать структуру БД из каталогов, то есть всех выпущенных марок СССР. Потом уже БД СВОИХ марок - просто проставив цифру напротив уже описанной марки.

Возвращаясь к базе, попробую ввести два признака:
1. Каталог
2. Основная/подвид

Я представляю как положительно скажется это на экселевской таблице. СТруктура БД понятнее может быть станет.
...
Рейтинг: 0 / 0
24.12.2011, 22:26
    #37592243
mcureenab
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как бы вы объединили каталоги товаров
АНиколаев
Задача создать структуру, которая объединит 5 каталогов, чтобы можно было сравнивать описание марки в разных каталогах и определять истинность признаков.

Пока в голове одна таблица, в которой будут все каталоги, а каждому признаку своя связанная таблица. Но будут 5 разных связанных таблиц по каждому признаку для каждого каталога.



Объекты учёта:
каталожная карточка,
класс марок.

5 каталогов - 5 отношений для каждого вида каталожных карточек.
1 таблица с классами марок, с нужной вам классификацией.
В процессе нормализации данных количество таблиц может увеличиться.

Смысл классификатора марок в том, чтобы понимать, идёт ли речь в разных каталожных карточках об одной и той же марке или типе марок.

Дальше идёт аналитическая обработка каталожных карточек, чтобы наполнить классификатор марок и создать связи каталожных карточек с классами марок.
Т.е. нужно делать запросы к каталогам, сопоставлять атрибуты и выяснять, в каких карточках речь идёт об одном и том же классе марок.

Наконец получив БД, можно будет находить нужный класс марок и соответствующие ему карточки в каталогах и проверять достоверность данных.
...
Рейтинг: 0 / 0
26.12.2011, 11:56
    #37593219
_мод
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как бы вы объединили каталоги товаров
[quot АНиколаев]_модНо тогда как сопоставить одинаковые подвиды описанные в разных каталогах?
Это сложно. Поскольку нумерация разная, то надо одним и тем же позициям присваивать один и тот же сквозной номер.
...
Рейтинг: 0 / 0
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Как бы вы объединили каталоги товаров / 20 сообщений из 20, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]