Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.03.10;
Скачать: [xml.tar.bz2];

Вниз

Графы и Referential Integrity   Найти похожие ветки 

 
OneOfTheFew   (2003-02-18 16:54) [0]

Любителям гимнастики для ума!!!

Графы и Referential Integrity:

Есть матрица M размерностью NxN,описавающая возможные взаимоотношения между элементами (A,B,C,D,E,F,G) - пусть эти элементы - файлы Paradox,связанные ссылочной целостностью :
Если элемент M[x,y]="*" - это значит, что M[X,0] является
"master" для M[Y,0].
Случай M[x,y]="*", где x=y не рассматриваем.

ABCDEFG
A
B*
C**
D *
E *
F

Другое представление:

A->B
B->С
С->(terminal)
D->E
E->(terminal)
F->(terminal)
G->D

Надо "пройти" матрицу M и составить порядок удаления данных из таблиц.

Ногами просьба не бить :)))


 
DarkGreen   (2003-02-18 17:41) [1]

В свойствах ссылочной целостности вместо Restriсt поставь Cascade. И будет оно у тебя спокойно удаляться в любом порядке
;-)


 
OneOfTheFew   (2003-02-18 17:58) [2]

2 Dark Green
Спасибо, попробую!


 
OneOfTheFew   (2003-02-18 18:07) [3]

2 Dark Green
Слушай, чего то не проходит Твой вариант :-(


 
DarkGreen   (2003-02-19 05:34) [4]

Странно :-/
Ну тогда так:

function dddd(K, L: integer);
begin
for I := k to n do
begin
for J := l to n do
begin
if MyArray[I, J]="*" then
dddd(I, J);
end;
delete from Table[I, 0]
end;
end;

.........
dddd(1, 0)
.........


Если не ошибаюсь :-)


 
DarkGreen   (2003-02-19 06:23) [5]

Опс, сорри, затупил откровенно. Так правильнее

var
MyArray: array[0..N, 0..N + 1] of Integer;
Deleted: array[0..N] of Boolean;

function dddd(K, L: integer);
begin
for I := k to n + 1 do
begin
for J := l to n do
if (MyArray[I, J]="*") and (I <> J) and not deleted[J] then
dddd(J, 0);
deleted[I] := True;
delete from Table[I] //Каким-то образом удаляем данные
end;
end;
..........
Инициализация массивов и т.д.
..........
dddd(1, 0)
..........




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

Форум: "Базы";
Текущий архив: 2003.03.10;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.56 MB
Время: 0.034 c
14-30078
Clickmaker
2003-02-21 18:12
2003.03.10
Клиент отваливается от DCOM сервера


1-29788
Lord Thunder
2003-02-26 11:24
2003.03.10
CheckListBox... Помогите разобраться...


14-30123
SuperMagic
2003-02-23 12:28
2003.03.10
Пакеты разработки в Делфи


14-30132
michael_b
2003-02-23 20:54
2003.03.10
Что делают на подобных сайтах профессионалы???


3-29708
alex_bredin
2003-02-18 16:04
2003.03.10
TQRPreview





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский