Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.06.13;
Скачать: CL | DM;

Вниз

Сруктура БД. В форуме Базы не добавляет.   Найти похожие ветки 

 
Помогите   (2002-05-21 10:49) [0]

Есть таблица ФИО и Подразделения.
Неизвестно какая вложенность будет в подразделениях например:

У подразделения 1 может быть участок 1
У подразделения 2 может быть Участок 1 у которого есть отдел 1
У подразделения 3 больше ничего нет.
Как организовать ?

А у Фио должно храниться код подразделения. Пожайлуста обрисуйте ситуацию.


 
Romkin ©   (2002-05-21 10:56) [1]

Типичная структура дерева, если я правильно понял

Одна таблица

UID, |Код - Что это (участок и тд), |Наименование, |Чему принадлежит |

Поле чему принадлежит ссылается на UID вышестоящего, если верхний уровень - пусто. У ФИО - UID


 
Помогите   (2002-05-21 11:19) [2]

А может так:
Подразделение:
Id, mother_Id,Name

Фио:
...,code_id

Если это верно тогда вопрос:
Как организовать запрос чтобы при выборе самого верхнего подразделения...показывало людей которые находяться во всех дочерних?


 
Romkin ©   (2002-05-21 11:23) [3]

База-то какая?
Если сервер - то SP
А по деревьям и как с ними работать - http://www.ibase.ru/devinfo/treedb.htm


 
Помогите   (2002-05-21 11:24) [4]

Блин описался:
в ФИО конечно же:
....,Id(подразделения);


 
Помогите   (2002-05-21 11:25) [5]

База InterBase/
А текст хранимой процедур не подскажешь?


 
Romkin ©   (2002-05-21 11:48) [6]

иди на www.ibase.ru там все уже написано
Примерно
create table P(ID integer, Owner_ID integer, Name varchar(200),
primary key (ID)
)

alter table P add constraint FK_P_Owner
foreign key (Owner_ID) references P (ID)
on delete cascade on update cascade

create procedure List_Child(Owner integer)
returns (ID integer, Name varchar(200))
as
begin
exit;
end;

alter procedure List_Child(Owner integer)
returns (ID integer, Name varchar(200))
as
begin
for select ID, NAME from P
where Owner_ID = :Owner
into :ID, :NAME
do begin
suspend;
for select ID, NAME from List_Child(:ID)
into :ID, :NAME
do suspend;
end
end;



Страницы: 1 вся ветка

Текущий архив: 2002.06.13;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.011 c
6-40141
Serd_hhc
2002-03-30 13:44
2002.06.13
Как написать свой Server (типа TServerSocket) с uses WinSock?


3-39949
Pokotskiy
2002-05-14 21:17
2002.06.13
Помогите скопировать таблицу!


6-40136
Aleksandr
2002-04-05 12:49
2002.06.13
Как узнать, является указанный путь сетевым или локальным?


14-40177
Sergo
2002-05-13 11:59
2002.06.13
Memo


1-40018
mazepa
2002-06-01 00:40
2002.06.13
Access