|
добавить свойство объекту - как бы тут не заморочиться ?
|
|||
---|---|---|---|
#18+
например: таблица карт товара по запчастям из 10 полей и тут прибивает к сонным берегам малявку добавить свойство Цвет. Ну разумеется, тут удивляться нечему - цвет, так цвет - пусть цветет. Но есть сомнение - из 100 кило карт цвет понадобится для одной-двух. Есть же Descr или на худой конец Инфо - нет клиент намекает что будет не только Цвет, но еще Запах (задние фонари бывают красными и желтыми, вонючки бывают бумажные и меловые... ну понятно короче) - и как-то всё это должно быть "разложено по полочкам, но видно в одной большой таблице". выбор: 1 добавлять поля к таблице карт товара и перерисовывать клиентов - каждое новое свойство в отдельном столбце и иметь 99.9% заполнение этих столбцов 2 сделать таблицу свойств, таблицу значений свойств с id_Property, id_Card, Prop_Value ...и тогда имеем один-ко-многому для каждой карты. Как визуализировать: сидя на FB 2.5 (про окна вроде пока не знаем) пока вижу "курсор в триггере" (как не страшно это звучит) - при добавлении нового свойства или измнении-удалении все свойства агрегируются в строку и строка падает в одно поле ДобИнфо - ну и из MSAccess по этому полю нормальную фильтрацию можно делать... да-нет ? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.05.2016, 18:43 |
|
добавить свойство объекту - как бы тут не заморочиться ?
|
|||
---|---|---|---|
#18+
SangYongКак визуализировать: сидя на FB 2.5 (про окна вроде пока не знаем) пока вижу "курсор в триггере" (как не страшно это звучит) - при добавлении нового свойства или измнении-удалении все свойства агрегируются в строку и строка падает в одно поле ДобИнфо - ну и из MSAccess по этому полю нормальную фильтрацию можно делать... Бред. Если твой MS Access не умеет шахматку из коробки - понадобится программист. Если его нет - не трогай EAV, не по плечу оно тебе. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
21.05.2016, 18:54 |
|
добавить свойство объекту - как бы тут не заморочиться ?
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
21.05.2016, 18:55 |
|
добавить свойство объекту - как бы тут не заморочиться ?
|
|||
---|---|---|---|
#18+
ох да не, рисовать отчетики в разных форматах, шарахаясь по рекордсетам эт не проблема, в pdf выкатить а потом его на форму положить или заполнить пустой шаблон табличной формы - без разницы...можно же прицеплять к рекодсету строку, полученную из функции, агрегирующей свойства в строку не производительно... ну пока в сомнениях ... |
|||
:
Нравится:
Не нравится:
|
|||
21.05.2016, 21:22 |
|
добавить свойство объекту - как бы тут не заморочиться ?
|
|||
---|---|---|---|
#18+
SangYong, при втором варианте задача вырождается в динамическую ORM с описанием в отдельных таблицах классов, членов этих классов с указанием типа данных хранения и интерпретации, ведением таблицы объектов и нескольких таблиц значений членов объекта по типам данных хранения. А-ля платформа "1С". ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 14:03 |
|
добавить свойство объекту - как бы тут не заморочиться ?
|
|||
---|---|---|---|
#18+
Для атрибута, который нужен для 1% основных записей вполне себе годится пристыкованная как 1-к-1 табличка, приждойнил, где надо и готово. Если клиент невообразимо туп (затрудняюсь правда придумать, чтоб нельзя было протолкнуть запрос с джойном ), можно навесть вьюху. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.05.2016, 12:08 |
|
добавить свойство объекту - как бы тут не заморочиться ?
|
|||
---|---|---|---|
#18+
Ivan_PisarevskyДля атрибута, который нужен для 1% основных записей вполне себе годится пристыкованная как 1-к-1 табличка, приждойнил, где надо и готово. Если клиент невообразимо туп (затрудняюсь правда придумать, чтоб нельзя было протолкнуть запрос с джойном ), можно навесть вьюху. если атрибут не 1 то лучше таблицу атрибутов строки, что-то вроде : fk_rec_id, attr_type, attr_value ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2016, 23:55 |
|
добавить свойство объекту - как бы тут не заморочиться ?
|
|||
---|---|---|---|
#18+
NikolayV81лучше таблицу атрибутов строки Да не потянет он EAV... Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2016, 00:19 |
|
добавить свойство объекту - как бы тут не заморочиться ?
|
|||
---|---|---|---|
#18+
NikolayV81, приветвую...как на серванте организовать таблциилилиу свойств - это понятно . важна визуализация данных из одной таблицы на клиенте. Все не нррмативные свойства я хочу показать в одном поле даташита-вопрос как туда их собирать ... триннером в строку или процедурой при показе ну или поставлю 3 ФБ и окном. врпррс нагрузки на сервер ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2016, 08:39 |
|
добавить свойство объекту - как бы тут не заморочиться ?
|
|||
---|---|---|---|
#18+
извиняюсь - из метро печатал .... ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2016, 08:40 |
|
добавить свойство объекту - как бы тут не заморочиться ?
|
|||
---|---|---|---|
#18+
SangYong, у меня такие вещи собираются в набор строк с полями: "object_id" ID, "attr_id" ID, "sequence" SMALLINT, "int2" SMALLINT, "int8" BIGINT, "blob" BLOB, "dtm8" TIMESTAMP, "flt8" DOUBLE PRECISION, "int4" INTEGER, "flt4" FLOAT, "vchr" DESCRIPTION, "value" DESCRIPTION -- символьное представление значения с учетом интерпретации (то, что будет показано пользователю) и еще дюжина служебных полей, таких как: тип (из какого поля брать значение), уточнение (что из себя представляет значение), имя атрибута, тэг, видимость и т.д. P.S. Форумяне, прошу воздержаться от возражений по поводу использования двойных кавычек в квотировании имен полей. ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2016, 09:29 |
|
добавить свойство объекту - как бы тут не заморочиться ?
|
|||
---|---|---|---|
#18+
SangYong, на Aliexpress.com все многообразие товаров представлено названием и цветом. "Цвет" - это просто дополнительная характеристика. Например - зернистость камня. А все подробности впихиваются в название в виде текста. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2016, 10:27 |
|
добавить свойство объекту - как бы тут не заморочиться ?
|
|||
---|---|---|---|
#18+
SangYongкак на серванте организовать таблциилилиу свойств - это понятно .вот и славно SangYongважна визуализация данных из одной таблицы на клиенте.типичный запрос с джойном (джойнами в требуемом кол-ве) SangYongнагрузки на серверсколько миллионов товаров надо отобразить? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2016, 11:32 |
|
добавить свойство объекту - как бы тут не заморочиться ?
|
|||
---|---|---|---|
#18+
SangYongВсе не нррмативные свойства я хочу показать в одном поле даташита-вопрос как туда их собирать ... Ну, лично я бы обошёлся простым запросом вообще без джоинов, оконных функций и прочей дребедени. И оператором присваивания. Но тебе не судьба. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2016, 11:40 |
|
добавить свойство объекту - как бы тут не заморочиться ?
|
|||
---|---|---|---|
#18+
чччДА все подробности впихиваются в название в виде текста. да - именно...вопрос как впихивается...ручками напрямую с ошибками или без... или всетаки через нармализированные таблицы свойств, на которых висят триггеры на вставку/обновление (да, знаю, что плохо само по себе и плохо что дублируются данные) если добавляется к карте новое свойство, кусором проходим по всем имеющимся свойсвтвам этой карты, составляем строку заново и кладем ее в описательную часть товара чтобы сделать быструю визуализацию свойств в одном поле. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2016, 13:19 |
|
добавить свойство объекту - как бы тут не заморочиться ?
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, оператор присваивания - что...где...когда...почём ? мож действительно не судьба, а так хотелось... :) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2016, 13:23 |
|
добавить свойство объекту - как бы тут не заморочиться ?
|
|||
---|---|---|---|
#18+
rdb_devSangYong, у меня такие вещи собираются в набор строк с полями: "object_id" ID, "attr_id" ID, "sequence" SMALLINT, "int2" SMALLINT, "int8" BIGINT, "blob" BLOB, "dtm8" TIMESTAMP, "flt8" DOUBLE PRECISION, "int4" INTEGER, "flt4" FLOAT, "vchr" DESCRIPTION, "value" DESCRIPTION -- символьное представление значения с учетом интерпретации (то, что будет показано пользователю) и еще дюжина служебных полей, таких как: тип (из какого поля брать значение), уточнение (что из себя представляет значение), имя атрибута, тэг, видимость и т.д. P.S. Форумяне, прошу воздержаться от возражений по поводу использования двойных кавычек в квотировании имен полей. ;) Если итак известно какой тип сохраняем, то зачем такой зоопарк полей? Есть недоверие к преобразованиям type->str str->type? p.s. sequence smallint порадовало... тогда уж rec_no называть нужно... ... |
|||
:
Нравится:
Не нравится:
|
|||
04.06.2016, 23:15 |
|
добавить свойство объекту - как бы тут не заморочиться ?
|
|||
---|---|---|---|
#18+
NikolayV81Если итак известно какой тип сохраняем, то зачем такой зоопарк полей? Есть недоверие к преобразованиям type->str str->type? p.s. sequence smallint порадовало... тогда уж rec_no называть нужно... Это если известно заранее, а не задается разработчиком конфигурации. В моем варианте атрибут класса, его тип, интерпретация, порядок и условия видимости задаются в отдельных таблицах практически в runtime режиме. Уже писал, что это больше похоже на платформу "1С". ... |
|||
:
Нравится:
Не нравится:
|
|||
06.06.2016, 09:34 |
|
добавить свойство объекту - как бы тут не заморочиться ?
|
|||
---|---|---|---|
#18+
rdb_devNikolayV81Если итак известно какой тип сохраняем, то зачем такой зоопарк полей? Есть недоверие к преобразованиям type->str str->type? p.s. sequence smallint порадовало... тогда уж rec_no называть нужно... Это если известно заранее, а не задается разработчиком конфигурации. В моем варианте атрибут класса, его тип, интерпретация, порядок и условия видимости задаются в отдельных таблицах практически в runtime режиме. Уже писал, что это больше похоже на платформу "1С". И всё равно не понимаю почему не использовать отдельный класс для преобразования этих типов в строку, ведь по факту может оказаться что в runtime кто-то захочет завести 126-битное целое :) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2016, 07:05 |
|
добавить свойство объекту - как бы тут не заморочиться ?
|
|||
---|---|---|---|
#18+
NikolayV81И всё равно не понимаю почему не использовать отдельный класс для преобразования этих типов в строку, ведь по факту может оказаться что в runtime кто-то захочет завести 126-битное целое :) Потому, что конкретно в моей ORM, чтобы что-то преобразовать в строку, надо знать тип значения (из какой таблицы брать) и что это значение из себя представляет. К примеру, четырехсимвольные теги типа значения и интерпретации значения в таблице описания атрибута содержат 'INT4' и 'IPV4', что означает: 1. Значение находится в таблице VALUE_INT4 (ограничивается полями: object_id, attr_id, value); 2. Значение представляет из себя адрес в таком же формате, как в поле заголовка пакета IPv4 (порядок байт big-endian); 3. Может быть преобразовано специальной ХП в строку вида '###.###.###.###', содержащую десятичные значения октетов IP адреса; Собственно, некая ХП чтения значения атрибута объекта и занимается всеми этими преобразованиями, помещая полученное значение в поле "value", помимо того, что возвращает значения поля в неизменном виде в одном из полей: "int2", "int8", "blob", "dtm8", "flt8", "int4", "flt4" или "vchr" (из какого поля программе брать значение определено четырехсимвольным тэгом типа значения). Так понятно? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2016, 09:44 |
|
|
start [/forum/topic.php?fid=40&msg=39248064&tid=1562148]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
48ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
60ms |
get tp. blocked users: |
1ms |
others: | 268ms |
total: | 426ms |
0 / 0 |