Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Несколько значений в одной ячейке [D5, MSSQL]


Марат ©   (2004-03-25 06:15:00) 

Уважаемые мастера требуется совет. Сейчас я создаю новую таблицу на сервере, в которой одна из ячеек должна содержать несколько значений (от 1 до 15). И я вроде бы придумал, что лучше всего их разделить запятыми (например ,2,7,11,14), а потом при считывании выбирать отдельные значения между запятыми. А быть может есть какой-то другой альтернативный вариант (кроме, "запихать" каждое значение в отдельную ячейку)?


ЮЮ   (2004-03-25 08:01:00) [1]

>Я же говорю это пример с потолка. На самом деле задача-серьезная.

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

>На самом деле задача-серьезная. Забыл сказать, что будет еще одна таблица

Нам бы такие серьезные задачи (с 3-4 мя таблицами :-)


Марат   (2004-03-25 07:57:00) [2]

Я же говорю это пример с потолка. На самом деле задача-серьезная.
Забыл сказать, что будет еще одна таблица, связывающая таблицы В и С. Затем в проекте в зависимости от С будет выполнятся В, и наоборот, если выполнено С то нужно сделать В, естественно для каждого пользователя А в отдельности.


ЮЮ   (2004-03-25 07:48:00) [3]

>В48-спать,С37-если ночь

В48-спать cпать , если
  С37>спать хочется и
not С23>не хочется есть
not С25>не хочется пить

А MS SQL обязателен для таоей версии Simm-ов ? :-)


Марат   (2004-03-25 07:38:00) [4]

Естественно пример с потолка, потому что объяснить всю задачу- долго. Пусть будет так А1- Иванов, В34- кушать, С23- если голодный; В35-пить С25-если жажда. А2-Сидоров, В2-купить,С4-если есть деньги;В48-спать,С37-если ночь;В75-встать,С43-если 8 утра и т.д.


Ильш   (2004-03-25 07:36:00) [5]


> И что будет если я для каждого из 15 пропишу 45, а потом
> для всех 15*45 пропишу 76?

блин, а как ты думаешь делают люди? тебя что беспокоит размер таблиц? у тебя че комп с 8 Мб винта? В чем проблема то?
твой подход конечно возможен - но потом не жалуйся сюда на геморрой, который обязательно всплывет!!!
:)))


ЮЮ   (2004-03-25 07:25:00) [6]

>делать 76 (таблица В) действий при 45 (таблица С) условиях.

условия относятся к человеку безотносительно к возможным действиям или как? Связь между тремя сущностями мзвестна только тебе, мы можем лишь гадать


Марат   (2004-03-25 07:16:00) [7]

Это только в одной таблице 15 значений, а во второй 45, а в третьей 76. И что будет если я для каждого из 15 пропишу 45, а потом для всех 15*45 пропишу 76? Ну чтобы лучше понять попробую объяснить вот так: есть 15 (таблица А) человек, каждый из них может делать 76 (таблица В) действий при 45 (таблица С) условиях.
Так вот таблица К должна связать эти три таблицы примерно так:
А       В         С
1    ,34,35     ,23,25
2    ,2,48,75   ,4,37,43
...


spirit   (2004-03-25 07:05:00) [8]

2,7,11,14 я так понимаю, это некоторые показатели некого объкта, номер которого хараниться в соседней ячейке (допустим 4).
а почему бы не сделать:

id_ob  -  pokazatel

4      -      2
4      -      7
4      -      11
4      -      14

я думаю потом SQL запросом не сосавит проблем выбрать все показатели объекта под номером 4


Марат   (2004-03-25 06:57:00) [9]

А перевести? Я ничего не понял.


ЮЮ   (2004-03-25 06:42:00) [10]

Три таблицы? Лучше, IMHO, связать попарно :-) И не в главной записи хранить ссылки на детэйл, а наоборот, в детэйл хранить ссылку на мастер-запись


Марат   (2004-03-25 06:29:00) [11]

Да. Эта таблица будет связывать три таблицы из базы. И эти цифры берутся из одной из них.


ЮЮ   (2004-03-25 06:23:00) [12]

а "2, 7, 11, 14" - это что? Имеют ли они хоть какое-то отношение к хранимой в БД информации?


Наверх

Титульная страница Поиск, карта сайта Написать письмо