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

Вниз

Создание динамического поля   Найти похожие ветки 

 
Mishenka   (2006-06-21 15:51) [0]

Каждой записи из первой таблицы соответствуют несколько записей из второй таблицы. Как для записи из первой таблицы создать динамическое поле, которое содержит определенное поле всех связанных с ним записей из второй таблицы? Например записи из первой таблицы соответствуют записи у которых поле "номер" равно "5", "8", "3" соответственно. Нужно создать динамическое поле со значением "3, 5, 8".


 
Vlad ©   (2006-06-21 15:54) [1]


> Mishenka   (21.06.06 15:51)  


Calculated fields?


 
Sergey13 ©   (2006-06-21 15:57) [2]

> [0] Mishenka   (21.06.06 15:51)

Может тебе мастер-детальная связка нужна? Или я не понял ничего.


 
Mishenka   (2006-06-21 16:19) [3]

> Vlad ©   (21.06.06 15:54) [1]
> Calculated fields?

Вроде Calculated fields рассчитываются на основе значений уже существующих полей текущей записи, а мне на основе связанных записей из другой таблицы.


> Sergey13 ©   (21.06.06 15:57) [2]
> Может тебе мастер-детальная связка нужна? Или я не понял
> ничего.

А что такое мастер-детальная связка?


 
Vlad ©   (2006-06-21 16:25) [4]


> Mishenka   (21.06.06 16:19) [3]


> Вроде Calculated fields рассчитываются на основе значений
> уже существующих полей текущей записи, а мне на основе связанных
> записей из другой таблицы.

Кто тебе мешает по событию OnCalcFields пробежаться по связанным записям из другой таблицы?


 
Sergey13 ©   (2006-06-21 16:28) [5]

2 [3] Mishenka   (21.06.06 16:19)
> А что такое мастер-детальная связка?
Это когда
>Каждой записи из первой таблицы соответствуют несколько записей из второй таблицы.


 
Mishenka   (2006-06-21 16:32) [6]


> Vlad ©   (21.06.06 16:25) [4]>
> Кто тебе мешает по событию OnCalcFields пробежаться по связанным
> записям из другой таблицы?

Да в принципе никто :) Просто если для каждой записи для вычисления значения этого поля запрос вызывать, не получится ли так, что при большом числе записей прога будет тормозить?


 
Mishenka   (2006-06-21 16:32) [7]

Удалено модератором
Примечание: дубль


 
Sergey13 ©   (2006-06-21 16:34) [8]

2 [6] Mishenka   (21.06.06 16:32)
>  не получится ли так,
Получится. Особенно если запрос будет непростой и много по датасету бегать.

Ты так и не объяснил задачу.


 
Val ©   (2006-06-21 16:38) [9]

а придется бегать, без вариантов, так как сервера нет, то бегать придется по нд на клиенте.

>[8] Sergey13 ©   (21.06.06 16:34)
он хочет показать идшники детальной таблицы в виде списка (строкового поля) в мастер-таблицею


 
Vlad ©   (2006-06-21 16:39) [10]


> Mishenka   (21.06.06 16:32) [6]


> Да в принципе никто :) Просто если для каждой записи для
> вычисления значения этого поля запрос вызывать, не получится
> ли так, что при большом числе записей прога будет тормозить?
>

Тормозить не будет, а легонько притормаживать - возможно :-)


> Sergey13 ©   (21.06.06 16:34) [8]


> Ты так и не объяснил задачу.


Ну вроде понятно, у человека в detail таблице есть записи:
5
8
3
нужно в master таблице добавить поле, содержащее строчку "3, 5, 8", и так для каждой master записи свой набор detail-ов.
Вроде так.


 
Sergey13 ©   (2006-06-21 16:41) [11]

>он хочет показать идшники детальной таблицы в виде списка (строкового поля) в мастер-таблицею
Ах вон он что! А зачем? Что бы потом разбирать эту строку?


 
Val ©   (2006-06-21 16:41) [12]

угу, я неверно написал выше, список не идшников, а поля "номер"(с)


 
Val ©   (2006-06-21 16:42) [13]

ну почему разбирать, он же просто для отображения на клиенте собирает. нормальное желание.


 
Sergey13 ©   (2006-06-21 16:46) [14]

> [13] Val ©   (21.06.06 16:42)
> ну почему разбирать, он же просто для отображения на клиенте
> собирает. нормальное желание.

А если "номера" будут не 5 и 8, а 118827368 и 234878768, да если их будет по сотню-другую? Сомневаюсь я в правильности такого подхода.
Обычный М-Д и нефига мудрить. 8-)


 
Vlad ©   (2006-06-21 16:48) [15]


> Sergey13 ©   (21.06.06 16:46) [14]


> А если "номера" будут не 5 и 8, а 118827368 и 234878768,
>  да если их будет по сотню-другую?

Ну раз товарищ хочет, значит наверное знает что там будет и чем это чревато :-)
М-Д по любому сделать неплохо бы.


 
Mishenka   (2006-06-21 16:50) [16]


> Sergey13 ©   (21.06.06 16:34) [8] >
> Ты так и не объяснил задачу.


Попробую попонятней...
C одной записью связаны записи (из другой таблицы). У каждой из связанных записей есть поле "номер". Соответственно нужно создать динамическое поле, в котором через запятую были перечислены номера всех связанных записей.


 
Mishenka   (2006-06-21 16:54) [17]


> Sergey13 ©   (21.06.06 16:46) [14]
> Обычный М-Д и нефига мудрить. 8-)

А всё-таки что такое М-Д ?


 
Sergey13 ©   (2006-06-21 16:57) [18]

> [16] Mishenka   (21.06.06 16:50)

Да понял уже. 8-)
Мое ИМХО такое - ты хочешь с трудом и тормозами получить неоперабельные данные, вместо того, что бы решить задачу просто и "страндартно" (вместо "строки" получить "столбик" данных).


 
Sergey13 ©   (2006-06-21 16:59) [19]

> [17] Mishenka   (21.06.06 16:54)
> А всё-таки что такое М-Д ?

Это когда перемещаясь по главному (мастер) датасету ты имеешь в подчиненном (делайл) датасете связанные с текущей главной записью данные.


 
Mishenka   (2006-06-21 17:11) [20]


> Sergey13 ©   (21.06.06 16:57) [18]
> (вместо "строки" получить "столбик" данных).

Просто нужно для каждой записи видеть с какими номерами она связана, а как к каждой записи приделать столбик я не очень представляю.


> Sergey13 ©   (21.06.06 16:59) [19]
> Это когда перемещаясь по главному (мастер) датасету ты имеешь
> в подчиненном (делайл) датасете связанные с текущей главной
> записью данные.


Ну у меня эти две таблицы связаны. Или ещё чего надо сделать?


 
Vlad ©   (2006-06-21 17:22) [21]


> Mishenka   (21.06.06 17:11) [20]


> Ну у меня эти две таблицы связаны. Или ещё чего надо сделать?

Как связаны ?
Набери в справке "Master-detail relationships", там описано что и как надо делать



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

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

Наверх





Память: 0.5 MB
Время: 0.032 c
15-1154581771
Elen
2006-08-03 09:09
2006.08.27
Как работать с Asm файлами больше 5Мб?


15-1154543754
X9
2006-08-02 22:35
2006.08.27
Пришлашение Gmail


3-1150833605
Glivera
2006-06-21 00:00
2006.08.27
Корректное закрытие Excel


2-1154597920
Grant
2006-08-03 13:38
2006.08.27
TClentDataSet


2-1154517753
VitV
2006-08-02 15:22
2006.08.27
Delphi+Interbase. Cсылочная целостность таблиц из разных БД.





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