Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.019 c
9-27297
com2003
2003-04-03 20:39
2003.10.09
Чисто геометрия


1-27483
ki11er
2003-09-26 22:02
2003.10.09
Доступность сетевого диска


14-27660
Омлет
2003-09-22 00:01
2003.10.09
Именинники 22 сентября !


11-27419
microlab
2003-01-29 11:37
2003.10.09
Как Hkey2Str


1-27602
Xaksorz
2003-09-28 22:58
2003.10.09
Delphi




   Наверх