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

Вниз

Можно ли создать такую таблицу?   Найти похожие ветки 

 
3APA3A ©   (2003-09-19 23:56) [0]

Нужна такая таблица
Имя ID_1
ID_2
ID_3
ID_4
....
ID_N

Имя ID_1
ID_2
....
ID_M
Некоторый аналог этого:
type Rec=record
Name:ShortString;
ID:array of integer;
end.
Таблица должна быть Paradox"овская... можно ли это реализовать и если можно, то как?


 
Zacho ©   (2003-09-20 00:08) [1]

Если и можно, то почти наверняка - не нужно, и даже вредно. Почитай что-нибудь (хотя бы постоянно рекламируемого мной здесь Дейта) по теории РСУБД, и поймешь почему.
А лучше кратко, но конретно опиши задачу, тогда может и подскажем более-менее оптимальную структуру БД.


 
3APA3A ©   (2003-09-20 00:16) [2]

Да я все понимаю, что крайне невыгодно делать БД с разной длиной записей, хотя бы из-за скорости доступа к такой БД. Но меня совершенно не интересуют накладные расходы (загрузка ЦП, размер занимаемой БД и т.д.) поэтому я и спрашиваю - можно ли?

Суть такова (это не то что мне надо, но если скажете это - все будет ясно)
Телефонная книга.Возможность создания клиента с именем. На каждое имя можно записать сколько угодно номеров телефонов. Вот и все.


 
Zacho ©   (2003-09-20 00:32) [3]


> 3APA3A © (20.09.03 00:16) [2]
> Да я все понимаю, что крайне невыгодно делать БД с разной
> длиной записей, хотя бы из-за скорости доступа к такой БД.
> Но меня совершенно не интересуют накладные расходы

Нет, не понимаешь. Дело не в накладных расходах, а в целостности данных. Все-таки, почитай что-нибудь про нормализацию.

> Суть такова (это не то что мне надо, но если скажете это
> - все будет ясно)
> Телефонная книга.Возможность создания клиента с именем.
> На каждое имя можно записать сколько угодно номеров телефонов.
> Вот и все.

Очень просто. Две таблицы. Одна - клиент, вторая - телефонные номера, связанная с таблицей клиентов. Стандартная связь "мастер-детейл". Это называется "декомпозиция проекцией".
А вот примерная структура:
TABLE CLIENTS
ID INTEGER (PRIMARY KEY) некий искуственный индетификатор клиента, возможно AUTOINC
NAME STRING (или что там в Парадоксе, уже не помню) - имя клиента

TABLE PHONES
ID_CLIENT (FOREIGN KEY на таблицу CLIENTS)
PHONE_NUMBER <тип, подходящий для хранения номера телефона>
Первичный ключ во второй таблице состоит из двух полей - ID_CLIENT и PHONE_NUMBER.



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

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

Наверх




Память: 0.47 MB
Время: 0.014 c
14-27721
Карлсон
2003-09-20 18:50
2003.10.09
задача про две змеи.


14-27675
stone
2003-09-19 13:55
2003.10.09
MAPI


3-27393
T2
2003-09-17 20:03
2003.10.09
Удаление записей через AdoTable1


14-27740
Qwerr
2003-09-19 16:12
2003.10.09
Книга !


1-27559
Raptorus
2003-09-29 15:54
2003.10.09
Здравствуйте, Мастера. Подскажите пожалуйста как можно вызвать