Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Как сделать вложенную таблицу в другой с переменным кол-вом строк  [new]
Евгений_lea
Member

Откуда:
Сообщений: 75
Существует одна таблица. В ней последнее поле отвечает за выбор разных строк разного количества из другой таблицы. Как воплотить эту идею? Создавать новые таблицы для последнего поля, которые несут список id строк второй таблицы не хочу. Какой нужен тип последнего поля, чтобы реализовать вложенную таблицу и как к нему обратиться через dataReader (c#.net). За ранее благодарен.
3 дек 11, 13:00    [11700609]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать вложенную таблицу в другой с переменным кол-вом строк  [new]
Программист-Любитель
Member

Откуда:
Сообщений: 16839
Банальнейшая детальная таблица, связанная М:1 с вашей исходной таблицей. В детальной таблице поле ID содержит ссылку на запись исходной таблицы.
3 дек 11, 13:06    [11700628]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать вложенную таблицу в другой с переменным кол-вом строк  [new]
Евгений_lea
Member

Откуда:
Сообщений: 75
Программист-Любитель,

Я конечно ещё чайник, но простые реляционные таблицы я знаю как сделать, а вот чтобы id указывал не на одну строку второй таблицы, а не сколько. Или может я чего-то не понимаю?
3 дек 11, 13:27    [11700671]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать вложенную таблицу в другой с переменным кол-вом строк  [new]
PVC
Member

Откуда:
Сообщений: 319
Евгений_lea,

а поместить во вторую таблицу поле - ссылку на идентификатор первой - не судьба?
3 дек 11, 14:21    [11700750]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать вложенную таблицу в другой с переменным кол-вом строк  [new]
Евгений_lea
Member

Откуда:
Сообщений: 75
PVC,

Мне нужен принцип дерева TreeView, при простой ссылке получается очень много таблиц. К примеру главные узлы (строки) хранятся в одной таблице, а второстепенные узлы в другой. Просто главные узлы имеют разное количество второстепенных, они могут повторяться. Это всего две таблицы. Мой выход в этом был таков, что я создаю тупо в первой таблице поле, в котром перечисляются ссылки на строки второй таблицы, но не знаю как это реализовать в C#.
3 дек 11, 14:56    [11700802]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать вложенную таблицу в другой с переменным кол-вом строк  [new]
PVC
Member

Откуда:
Сообщений: 319
Евгений_lea,

TreeView проще реализовать одной таблицей, со ссылками на саму себя. Типа id / parentid.
3 дек 11, 15:12    [11700821]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать вложенную таблицу в другой с переменным кол-вом строк  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31983
Евгений_lea
Это всего две таблицы. Мой выход в этом был таков, что я создаю тупо в первой таблице поле, в котром перечисляются ссылки на строки второй таблицы
Стандартное решение - сделать третью таблицу - связь между вашими двумя.

Евгений_lea
но не знаю как это реализовать в C#.
Как раз ваш подход просто реализовать в C#, но сложно в реляционной СУБД :-)
3 дек 11, 15:15    [11700824]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать вложенную таблицу в другой с переменным кол-вом строк  [new]
PVC
Member

Откуда:
Сообщений: 319
alexeyvg
Стандартное решение - сделать третью таблицу - связь между вашими двумя.

+1
3 дек 11, 15:16    [11700826]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать вложенную таблицу в другой с переменным кол-вом строк  [new]
Евгений_lea
Member

Откуда:
Сообщений: 75
alexeyvg,

Да, всё абсолютно верно, о таком подходе я уже думал. Это получается каждой строке первой таблице будет существовать третья таблица, а строк может быть больше 1000. Это-то мне и не нравится.
3 дек 11, 15:25    [11700842]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать вложенную таблицу в другой с переменным кол-вом строк  [new]
PVC
Member

Откуда:
Сообщений: 319
Евгений_lea,

что то Вы недопонимаете. нарисуйте структуру таблиц.
3 дек 11, 15:37    [11700864]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать вложенную таблицу в другой с переменным кол-вом строк  [new]
Евгений_lea
Member

Откуда:
Сообщений: 75
PVC,

таблица1
id1, field1,field2,field3, table3 (имя таблицы 3)

таблица2
id2, поле1, поле2, поле3

таблица3
id3, id (ссылка на id2)
в этой таблице список строк выбранных из таблицы2

как-то так.
3 дек 11, 15:59    [11700905]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать вложенную таблицу в другой с переменным кол-вом строк  [new]
PVC
Member

Откуда:
Сообщений: 319
Евгений_lea,
table3 (имя таблицы 3) - это зачем?

t1
__
id_t1
...


t2
__
id_t2
...

t3
__
id_t1
id_T2

и все работает.
3 дек 11, 16:03    [11700917]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать вложенную таблицу в другой с переменным кол-вом строк  [new]
Евгений_lea
Member

Откуда:
Сообщений: 75
PVC,

Да, да, большое спасибо всем, я уже сам дошел.
3 дек 11, 16:33    [11701016]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать вложенную таблицу в другой с переменным кол-вом строк  [new]
Konanmos
Member

Откуда:
Сообщений: 1
понятно.
3 дек 11, 18:39    [11701365]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить