Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Вдоль или поперек? / 3 сообщений из 3, страница 1 из 1
14.07.2006, 14:16
    #33854016
ivenhoe
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вдоль или поперек?
Задача примерно такая: существует некий набор параметров (числе типа float), которые требуется хранить. Количесто параметров сравнительно невелико, но солжно сказать, сколько их вообще будет.
Я сделал две теблицы, в первой - описания параметров, во второй - сами параметры типа такого:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
-- Таблица описаний
CREATE TABLE [dbo].[ParamInfo] (
	[id] [int] NOT NULL  PRIMARY KEY,
	[ParamGroup] [int] NULL ,
	[Description] [varchar] ( 50 ) COLLATE Cyrillic_General_CI_AS NULL ,
	[Delta] [float] NULL ,
	[CanModify] [int] NULL ,
	[periodicity] [int] NULL 
) ON [PRIMARY]

-- Таблица значений - так сказать, вдоль

CREATE TABLE [dbo].[Parameter] (
	[DT] [datetime] NOT NULL ,
	[id] [int] NOT NULL ,
	[Object] [int] NOT NULL ,
	[Pick] [int] NOT NULL ,
	[Value] [float] NULL ,
	[ChangedDate] [datetime] NOT NULL ,
	[Whom] [int] NULL 
) ON [PRIMARY]

ALTER TABLE [dbo].[Parameter] WITH NOCHECK ADD 
	CONSTRAINT [PK_Parameter] PRIMARY KEY  CLUSTERED 
	(
		[DT],
		[id],
		[Object],
		[Pick]
	)  ON [PRIMARY]

Задумался об альтернативе, когда клиента стал прикручивать. Раньше всё делалось (и сейчас делается, пока я это ваяю) в экселе, т.е. прообраз некий есть. Желательно, понятно, не далеко от него уходить с т.зр. интерфейса. В экселе же большинство таблиц имеют несколько иную форму - так сказать поперёк:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
create table Parameter
(
	dt datetime,
	pick int,
	par1 float,
	par2 float,
	par3 float
.......................
	parN float
)
Из недостатков такой формы - неудобство при добавлении новых параметров (сколько их всего - мне неизвестно, вобщем-то число их фиксировано, но в систему добавлятся будут постепенно). Известно, что параметров - около сотни. Немного некрасиво придётся делать таблицы описаний... Вести учёт изменений и т.п....

Из достоинств (почему и задумался) - удобство формирования результатов - не надо таблицы "поворачивать" для клиента, удобнее иногда группировать данные... Делать отчёты - иногда удобнее с "поперечной" формой...

Что скажет общественность? Как разумнее организвать - вдоль или поперёк?
...
Рейтинг: 0 / 0
14.07.2006, 14:24
    #33854042
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вдоль или поперек?
поперёк это EAV - поиск.
Общесвенность вероятно уже тошнит от обсуждения EAV
______________________________________________
Вы имеете право хранить молчание! Всё что Вы скажете может быть использовано против Вас в суде!
...
Рейтинг: 0 / 0
14.07.2006, 14:27
    #33854056
ivenhoe
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вдоль или поперек?
Да будет общественность столь же терпелива, сколь и мудра :)
...
Рейтинг: 0 / 0
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Вдоль или поперек? / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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