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

Откуда:
Сообщений: 1688
Здрасте)

Ситуация такова:
Есть четыре таблицы:
таблица № 1 с полями:
- Id1 - это первичный ключ строки
- наименование

таблица № 2 с полями:
- Id2 - это первичный ключ строки
- наименование

таблица № 3 с полями:
- Id3 - это первичный ключ строки
- наименование
- Id1 - это внешний ключ с таблицей 1
- Id2 (ну как-бы - вот с этим проблема - т.е это может быть и не Id - а просто поле.

Таблица №4 с полями
- Id4 - это первичный ключ строки
- наименование
- Id3

Как должно работать:
- Если в таблице 4 НЕТ строки с Id3, то в таблице 3 - остается Id2;
- если есть, то в таблице 3 - содержание Id2 заменяется на Id1.


Вопрос:
думаю, понятно, что содержание поля Id2 в таблице 3 - зависит от того - есть ли в таблице 4 соответствующая Id3 строка.

Проблема вот в чем:
Таблица 4 динамическая и от этого в таблице 3 постоянно меняется (пересчитывается) Id2.
Т.е: в ней (таблице 4) сачала вообще может не быть строк с Id3, а потом появиться и может быть несколько (много), а потом опять исчезнуть и в зависимости от этого в таблице 3 должно меняться содержание с полем Id2..

Как быть, что посоветуете?

Заранее, спасибо)
5 ноя 09, 10:12    [7883845]     Ответить | Цитировать Сообщить модератору
 Re: куда смотреть в такой ситуации?  [new]
Glory
Member

Откуда:
Сообщений: 104760
vladka63

Проблема вот в чем:
Таблица 4 динамическая и от этого в таблице 3 постоянно меняется (пересчитывается) Id2.
Т.е: в ней (таблице 4) сачала вообще может не быть строк с Id3, а потом появиться и может быть несколько (много), а потом опять исчезнуть и в зависимости от этого в таблице 3 должно меняться содержание с полем Id2..

Как быть, что посоветуете?

Как быть - это философский вопрос. Напишите лучше, что у вас не получилось
5 ноя 09, 10:32    [7883973]     Ответить | Цитировать Сообщить модератору
 Re: куда смотреть в такой ситуации?  [new]
Паганель
Member

Откуда: Винница
Сообщений: 22552
Автор, а что такое "динамическая таблица" ?
5 ноя 09, 10:34    [7883991]     Ответить | Цитировать Сообщить модератору
 Re: куда смотреть в такой ситуации?  [new]
vladka63
Member

Откуда:
Сообщений: 1688
Glory
vladka63

Проблема вот в чем:
Таблица 4 динамическая и от этого в таблице 3 постоянно меняется (пересчитывается) Id2.
Т.е: в ней (таблице 4) сачала вообще может не быть строк с Id3, а потом появиться и может быть несколько (много), а потом опять исчезнуть и в зависимости от этого в таблице 3 должно меняться содержание с полем Id2..

Как быть, что посоветуете?

Как быть - это философский вопрос. Напишите лучше, что у вас не получилось


не получается понять - что применить, что бы решить задачу с заменой полей.
можно ли это решить в базе.
5 ноя 09, 10:42    [7884054]     Ответить | Цитировать Сообщить модератору
 Re: куда смотреть в такой ситуации?  [new]
vladka63
Member

Откуда:
Сообщений: 1688
Паганель
Автор, а что такое "динамическая таблица" ?


динамическая таблица - заполняется пользователями (таблица 4).
таблицы 1,2,3 - подготовлены админом базы и из них пользователи выбирают данные для формирования части таблицы 4, а потом добавляют туда свои дополнительные данные - так и получается таблица 4.
5 ноя 09, 10:44    [7884071]     Ответить | Цитировать Сообщить модератору
 Re: куда смотреть в такой ситуации?  [new]
Glory
Member

Откуда:
Сообщений: 104760
vladka63
Glory
vladka63

Проблема вот в чем:
Таблица 4 динамическая и от этого в таблице 3 постоянно меняется (пересчитывается) Id2.
Т.е: в ней (таблице 4) сачала вообще может не быть строк с Id3, а потом появиться и может быть несколько (много), а потом опять исчезнуть и в зависимости от этого в таблице 3 должно меняться содержание с полем Id2..

Как быть, что посоветуете?

Как быть - это философский вопрос. Напишите лучше, что у вас не получилось


не получается понять - что применить, что бы решить задачу с заменой полей.
можно ли это решить в базе.

Понятнее не стало. Вы не можете составить алгоритм действий, которые должны происходить при изменении данных в таблицах ? Или не можете перевести этот алгоритм в TSQL ?
5 ноя 09, 10:46    [7884082]     Ответить | Цитировать Сообщить модератору
 Re: куда смотреть в такой ситуации?  [new]
vladka63
Member

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

алгоритм замены.
5 ноя 09, 11:13    [7884304]     Ответить | Цитировать Сообщить модератору
 Re: куда смотреть в такой ситуации?  [new]
nosov
Guest
автор
для замены используй ALTER TABLE
см книгу BOL
5 ноя 09, 12:08    [7884791]     Ответить | Цитировать Сообщить модератору
 Re: куда смотреть в такой ситуации?  [new]
vladka63
Member

Откуда:
Сообщений: 1688
nosov
автор
для замены используй ALTER TABLE
см книгу BOL


спасибо большое за наводку)
5 ноя 09, 14:08    [7885969]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить