Страница 1 из 1
Нужен совет по Перв и Вн ключам к таблицам.
Добавлено: 01 фев 2005, 10:50
McArty
Есть таблицы Шапка Документа и Табл. Часть документа.
при этом документ идентифицируется IDBase,IDTypeDoc,IDDoc
для связки с табл частью соответственно внеш. ключ по IDBASE,IDDOC
.Вопрос: Может лучше будет заменить три поля типа Integer на одно CHAR(15) ???
По быстродействию,что лучше индекс по 3-м полям типа Integer или одному полю CHAR(15)?
Добавлено: 01 фев 2005, 10:58
kdv
документ вообще-то не может идентифицироваться типом. а номера документов лучше всего сделать глобальные, т.е. одним числом. например x+y, где x - номер базы, и достаточно большое число.
Добавлено: 01 фев 2005, 12:45
Merlin
kdv писал(а):документ вообще-то не может идентифицироваться типом. а номера документов лучше всего сделать глобальные, т.е. одним числом. например x+y, где x - номер базы, и достаточно большое число.
Насчёт типа согласный, но убей не понимаю всеобщую ненависть к многосегментным констрайнтам и индексам. В данном случае двухсегментный ключ наиболее адекватно отражает реальность, позволяет простым и естественным образом строить запросы с фильтрацией, группировкой и сортировкой по базам и ничему не мешает в джойнах, если только не считать трагедией что два AND писать в условиях. Или ON ... AND в явных. Нет, почему-то все норовят превратить его в какую-то синтетику а потом колдовать с условиями и т.п.
Добавлено: 01 фев 2005, 13:05
kdv
да пожалуйста... я просто так сказал. можно подумать у меня в базах нет многосегментных ПК

Добавлено: 01 фев 2005, 15:20
McArty
вопрос снят!
"ID1+ID2+....+IDN = Больше геморроя,чем пользы."
