powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Связь между таблицами.
14 сообщений из 14, страница 1 из 1
Связь между таблицами.
    #32914981
Серж-1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня есть две таблицы
1-я табл. есть поле 1, поле 2, поле 3, поле 4
2-я табл. есть поле 1, поле 2, поле 3
мне надо зделать связь между 2-ой и 1-ой табл. но так чтобы связь был
2-я табл. поле 1 а 1-я табл поле 1, поле 2, поле 3
как мне енто зделать?
...
Рейтинг: 0 / 0
Связь между таблицами.
    #32915042
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ничего не понял. Ты хочешь что-то вроде такой связки?

Tab2.Field1 = Tab1.Field1+Tab1.Field2+Tab1.Field3

Нужна связь или отображение полей?
...
Рейтинг: 0 / 0
Связь между таблицами.
    #32915548
Серж-1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нужна связь, чтобы привыборе Tab2.Field1 осуществлялась связь с Tab1.Field1+Tab1.Field2+Tab1.Field3
...
Рейтинг: 0 / 0
Связь между таблицами.
    #32915802
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
так Вам никто ничего дельного не скажет
1. как реально связаны таблицы
2. где осуществляется выбор в первой таблице
3. как и где происходит реакция в таблице 2
4. может еще что от своих щедрот прибавите
...
Рейтинг: 0 / 0
Связь между таблицами.
    #32916189
Серж-1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Надо чтобы осуществлялась связь из второй таблицы Tab2.Field1 с первой но сразу по трем полям Tab1.Field1, Tab1.Field2, Tab1.Field3.
Может так понятней будет.
...
Рейтинг: 0 / 0
Связь между таблицами.
    #32916247
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
угу t1.f1=t2.f1+t2.f2+t2.f3 ^)))
...
Рейтинг: 0 / 0
Связь между таблицами.
    #32916264
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Слушай, приведи пример. Только, пожалуйста, не надо выдумывать собственную терминологию. Видимо, под словом "связь", ты понимаешь что-то сугубо специфическое.

Что такое "связь" в FoxPro почитай здесь

http://www.foxclub.ru/kb/index.php?sid=35321&aktion=artikel&rubrik=004&id=103&lang=ru
...
Рейтинг: 0 / 0
Связь между таблицами.
    #32916698
Серж-1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
При помощи "SET RELATION" мне надо сделать связь.
Главная у меня Tab2 подчинёная Tab1 и мне надо сделать так чтобы в форме кокга я и ду по Tab2 то в Tab1 мне показывало данные. Но связь между главной и подчиненой была такая:
Tab2.Field1 = Tab1.Field1, Tab1.Field2, Tab1.Field3.
...
Рейтинг: 0 / 0
Связь между таблицами.
    #32916797
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-) Создаешь в таблице Tab1 индекс примерно такого вида:

Код: plaintext
INDEX ON Field1+Field2+Field3 TAG SortOrd

Здесь я предполагаю, что все 3 поля символьного типа и их общая длина не превышает 240 символов. Если используется настройка SET COLLATE отличная от MACHINE, то общая длина не должна превышать 120 символов.

Если эти поля, например, числового типа, то выражение будет примерно такое

Код: plaintext
INDEX ON STR(Field1)+STR(Field2)+STR(Field3) TAG SortOrd

Тут главное, чтобы под каждое поле отводилось фиксированное количество символов. FoxPro не поддерживает индексные ключи переменной длины

-) Далее все "как положено"

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
select Tab1
SET ORDER TO SortOrd
select Tab2
SET RELATION TO Field1 INTO Tab1
* Если связь вида один-ко-многим, то надо еще
SET SKIP TO Tab1
GO TOP
BROWSE FIELDS Tab2.Field1, Tab1.Field1, Tab1.Field2, Tab1.Field3
...
Рейтинг: 0 / 0
Связь между таблицами.
    #32916810
Urri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
Tab2.Field1 = Tab1.Field1, Tab1.Field2, Tab1.Field3
Это как?
Поле Tab2.Field1 что, состоит из конкатенации трех указанных полей в Tab1? Или может из их суммы? Или вообще по формуле какой вычисляется? Этого от тебя добиваются. Какому выражению в Tab1 соответствует поле Tab2.Field1?

Если конкатенация, тогда так.
Подготовка...
Код: plaintext
1.
select tab1
index on Field1+Tab1.Field2+Tab1.Field3 tag KeyTag
Работа...
Код: plaintext
1.
2.
3.
4.
select tab1
set order to KeyTag
select tab2
set relation to field1 into tab2
go top
...
Рейтинг: 0 / 0
Связь между таблицами.
    #32916822
Urri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир меня конечно же опередил ;-) А я ошибся (into tab1 должно быть ;-))))
...
Рейтинг: 0 / 0
Связь между таблицами.
    #32916830
Серж-1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Все поля числовыэ.
...
Рейтинг: 0 / 0
Связь между таблицами.
    #32916838
Серж-1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо льшое за терпение и понимание и конечноже подсказку.
Дякую.
...
Рейтинг: 0 / 0
Связь между таблицами.
    #32917445
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi Серж-1!

Давай-ка лучше описания структуры (CREATE TABLE tab1 (что там у тебя за поля
с ТИПАМИ и РАЗМЕРАМИ обязательно!) - то-же для tab2 )
пример данных (лучше всего через несколько INSERT INTO tab1 (её поля)
VALUES (значения) )
и потом ЧТО нужно получить в результате - например просто укажи - "для
строки 1 из tab1 нужно чтобы показало строки 1, 2, 5 из tab2 потому что...
твоё условие человеческим языком, а для строки 2 из tab1 - строки 3,4 из
tab2 потому что ...".

Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Связь между таблицами.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]