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

Вниз

Связка таблиц..   Найти похожие ветки 

 
Fl@sh ©   (2006-03-10 21:50) [0]

Доброе время суток.
В течении 20 мин. можете обьяснить какое преимущество дают ключи (первичные, вторичные) для связывания таблиц.
Например, если я удаляю записи в главной таблице, надо ли удалять записи у дочерней, если там есть поле главной таблицы.
Может немножко не понятно оформил, тож извиняйте.


 
Fl@sh ©   (2006-03-10 21:53) [1]

И по ходу еще один вопросик. Например, таблица имеет поле id уникальное, и поле счет, кот. генерируется рандом. Как проверить, существует ли значение кот. добавляем в поле счет.
БД использую FreBird.


 
Гаврила ©   (2006-03-10 22:03) [2]


> Например, если я удаляю записи в главной таблице, надо
> ли удалять записи у дочерней, если там есть поле
> главной таблицы.

Это типа от задачи зависит - что надо

> Например, таблица имеет поле id уникальное, и поле
> счет, кот. генерируется рандом

Смысл действа? счетчик типа "инкреммент" чем не устроил?

> какое преимущество дают ключи (первичные, вторичные)
> для связывания таблиц

Контроль целостности данных на системном уровне  + скорость


 
Fl@sh ©   (2006-03-10 22:06) [3]


> Смысл действа? счетчик типа "инкреммент" чем не устроил?

Есть банковские счета 14 символов, надо чтоб небыло сходства, т.е. как код, он генерит автоматически, но надо все равно бы проверить, а вдруг совпадет.
А id так и работает через генератор +1.


> > Например, если я удаляю записи в главной таблице, надо
>
> > ли удалять записи у дочерней, если там есть поле
> > главной таблицы.
>
> Это типа от задачи зависит - что надо

Я имею виду будет ли оно удаляться автоматически, или надо вручную?


 
Труп Васи Доброго ©   (2006-03-10 22:22) [4]

Fl@sh ©   (10.03.06 21:50)
В течении 20 мин. можете обьяснить какое преимущество дают ключи (первичные, вторичные) для связывания таблиц.

Если просто, то офигенное преимущество! :)
СУБД сама контролирует чтобы получилось такой ситуации когда в главной таблице запись удалена/изменена, а в дочерней осталась ссылка на старую запись.
Fl@sh ©   (10.03.06 21:50)
Например, если я удаляю записи в главной таблице, надо ли удалять записи у дочерней, если там есть поле главной таблицы.

А это зависит только от сути задачи. Если такая запись в дочерней таблице приводит к путанице и глупым ситуациям, то лучше удалять. (например в списке товаров на складе - главной таблице, товар удалён, а в прайс-листе магазина - дочерней таблице он остался) Ситуация глупая, поэтому в данном случае лучше удалить. В других ситуациях наоборот, надо не удалять, а выполнять какие-либо другие действия, но в любом случае отслеживать изменения проще при помощи ключей.
Fl@sh ©   (10.03.06 21:53) [1]
Как проверить, существует ли значение кот. добавляем в поле счет.

IF EXISTS(select id from you_table where schet=znachenie) THEN bla, bla, bla.....
Но вообще то для этого генераторы есть.


 
Труп Васи Доброго ©   (2006-03-10 22:25) [5]

Fl@sh ©   (10.03.06 22:06) [3]
Я имею виду будет ли оно удаляться автоматически, или надо вручную?

А это как обработчик поставишь, может удалять, может игнорировать, может устанавливать в default. Как твоей душеньке угодно :)

ЙОПТ! И такие спецы пишут проги для банков!!!
Скажи какой это банк, чтобы я с ним не работал.


 
Гаврила ©   (2006-03-10 22:49) [6]

Скажи мне, кто твой банк, и я скажу, кто ты

> Есть банковские счета 14 символов

Везука. А у нас все 20


 
Fl@sh ©   (2006-03-11 14:19) [7]


> Гаврила ©   (10.03.06 22:49) [6]
>
> Скажи мне, кто твой банк, и я скажу, кто ты
>

Банк... да никакой, єто работа для лаб :)  Ежу понятно, что банку такое не прокатило бИ



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

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

Наверх





Память: 0.47 MB
Время: 0.036 c
1-1141154739
AlexeyT
2006-02-28 22:25
2006.04.02
Как вывести в Caption юникодную строку?


3-1139219530
erika
2006-02-06 12:52
2006.04.02
FB & 1C8.0


4-1136969518
menart
2006-01-11 11:51
2006.04.02
оброботка сообщение при записи диска


1-1141234705
ArtemESC
2006-03-01 20:38
2006.04.02
Invalid stream format


3-1139306548
Paha
2006-02-07 13:02
2006.04.02
изменить запущенного проекта из PROGRAM в v$session





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский