powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Update/replace.
5 сообщений из 5, страница 1 из 1
Update/replace.
    #32433550
kmvbad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите лопуху, плз, есть в фоксе возможность писать команды обновления как в Access типа
UPDATE XXX FROM YYY SET XXX.NAME=YYY.NAME WHERE XXX.CODE=YYY.CODE

или тоже самое через replace. И вообще, update отличается от replace если идет обновление сразу нескольких строк по условию?
...
Рейтинг: 0 / 0
Update/replace.
    #32433764
Фотография Hel!Riser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
по первому есть начиная с VFP30
по фторому опер выглядит примерно так - REPLACE xxx.name WITH yyy.name FOR xxx.code=yyy.code IN xxx
...
Рейтинг: 0 / 0
Update/replace.
    #32433878
kmvbad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
По-моему, после такой команды изменены будут только значения в xxx, у которых code=текущему значению code в yyy, т.е. не будет выполняться перебор всей таблицы.
...
Рейтинг: 0 / 0
Update/replace.
    #32434869
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Диалект SQL в FoxPro несколько уже чем стандарт. Особенно это касается команд INSERT-SQL, UPDATE-SQL и DELETE-SQL

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

Т.е. даже если ты подправишь синтаксис, то все равно, как ты правильно заметил, из подчиненной таблицы будет анализироваться только одна текущая запись.

Если по подчиненной таблице есть индекс, то подобная задача решается командой типа:

select Tab1
REPLACE FOR SEEK(tab1.id,"Tab2","Id") name WITH Tab2.name

Между UPDATE и REPLACE есть разница в реализации. Тонкостей достаточно много. Есть и глюки. Лично я предпочитаю использовать REPLACE
...
Рейтинг: 0 / 0
Update/replace.
    #32435528
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть ещё скажем LOOKUP() - вполне для этой цели сгодится :)
WBR, Igor
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Update/replace.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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