|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Подскажите пожалуйста синтаксис команды замены записей в таблицы Берем столбец1 и меняем значения на "n" при условии что значение столбца1>x ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2011, 10:21 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
упс.. REPLACE столбец1 WITH "n" for столбец1<10 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2011, 10:26 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
А чем собственно вопрос? Если Вы сами знаете ответ. Если для всех записей REPLACE ALL столбец1 WITH "n" for столбец1<10 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2011, 10:34 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Chek_FedorПодскажите пожалуйста синтаксис команды замены записей в таблицы REPLACE Command (Visual FoxPro) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2011, 10:42 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Когда писал не знал. Тут еще вопросик нужно перебрать значения в таблице1 и в случае совподения условия менять значения поля на то которое в таблице2 Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2011, 10:48 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Что нет такой возможности? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2011, 11:53 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Chek_FedorЧто нет такой возможности?Такой - это какой? Кстати, Вы, похоже, не обратили внимание на слово ALL в предложенных Вам примерах. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2011, 11:58 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Обратил только не заострил на этом внимания. Что касается "такой" там-же написано что при совпадении некого условия берем значение из второй таблицы и заменяем в первой. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2011, 12:05 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Chek_FedorОбратил только не заострил на этом внимания. Что касается "такой" там-же написано что при совпадении некого условия берем значение из второй таблицы и заменяем в первой.А в предложенных Вам примерах обновление делается не при "совпадении некого условия"? Не для всех, подпадающих под условие? Кстати, что такое совпадение условий? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2011, 12:19 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Пример последний, что там не понятного. 1таблица 1столбец 2столбец 1 а 2 б 3 с 2таблица 1столбец 2столбец 3столбец 1 а 222 1 б выв 1 с цуцу в случае совпадения 2таблица.1столбец=1 то меняем 2таблица.3столбец=1таблица.2столбец 1столбец 2столбец 3столбец 1 а 1 1 б 2 1 с 3 Так понятно ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2011, 12:39 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Chek_FedorПример последний, что там не понятного. 1таблица 1столбец 2столбец 1 а 2 б 3 с 2таблица 1столбец 2столбец 3столбец 1 а 222 1 б выв 1 с цуцу в случае совпадения 2таблица.1столбец=1 то меняем 2таблица.3столбец=1таблица.2столбец 1столбец 2столбец 3столбец 1 а 1 1 б 2 1 с 3 Так понятноКому? Вам? Может быть. Только вопросы Вы задаете нам и потому они должны быть понятны нам. Ибо понимание Вами Ваших вопросов почему-то не решило Ваши проблемы. А теперь расскажите почему Вы решили, что значение в какой-то таблице будет влиять на изменение данных в совершенно другой, никоим образом не связанной с первой, таблице? Просто наличие 2таблица.1столбец=1 ? Может лучше задачу распишиете, а не выбранный Вами способ ее решения? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2011, 12:58 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Так я Вам и пытаюсь описать задачу. 1 как связать таблицы в FoxPro, что в предыдущем примере не ясно? Или Вы издеваетесь? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2011, 13:01 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Chek_FedorТак я Вам и пытаюсь описать задачу. 1 как связать таблицы в FoxPro, что в предыдущем примере не ясно?Нет, неясно. Ибо условие 2таблица.1столбец=1 есть условие отбора строк в 2таблица и никоим образом не указывает хоть на что-то в 1таблице. Или Вы издеваетесь?Кто здесь издевается еще надо выяснить. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2011, 13:05 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2011, 13:12 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Chek_Fedor Код: plaintext
Ты неправильно понял как REPLACE работает, совсем не так как в селектах. Твой код равнозначен такому: Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2011, 13:51 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2011, 14:05 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
А есть возможность "скормить" что-то типа Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
Окно Command в FoxPro выполняет по моему только 1 строку. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2011, 14:17 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Chek_FedorА есть возможность "скормить" что-то типаДа, сохраняешь код в файле *.PRG и в командном окне пользуешься командой для редактирования MODI COMM <имя> и командой для выполнения DO <имя>. По логике приведенного тобой кода не достает поиска по таблице значения условия. Просто перейти в рабочую область SELECT недостаточно. Искать можешь по LOCATE, а лучше по SEEK, и потом разумеется проверить результат поиска IF FOUND() ... Если надумаешь искать SEEKом, то перед этим надо построить индекс по полю поиска. А так в целом очень близко к завершению. PS. REPLACE не единственная команда замены значения поля в таблице. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2011, 15:25 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
При выполнении условий p5080100.Kblok=Blok.blok5 и p5080100.Pred>1 должны изменятся данные в поле NBlok таблицы p5080100 на значение поля NBL таблицы Blok иначе следующая запись... ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2011, 16:17 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Все перепробовал "метод тыка" не работает, подскажите, пожалуйста, что не так... ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2011, 17:32 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Chek_Fedor, Сдается мне, что между select p5080100 и locate for (p5080100.Kblok=Blok.blok5) and (p5080100.Pred>1) нужно вставить go top ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2011, 17:57 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Chek_FedorГде напортачил? При выполнении условий p5080100.Kblok=Blok.blok5 и p5080100.Pred>1 должны изменятся данные в поле NBlok таблицы p5080100 на значение поля NBL таблицы Blok иначе следующая запись...Т.е. надо пройтись по таблице п5080100 и заменить в ней кблок на подходящие блок.нбл (если найдутся)? Тогда так Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2011, 19:06 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Chek_FedorОкно Command в FoxPro выполняет по моему только 1 строку. Если в окне Command выделить несколько строк, а затем нажать Enter, то будет выполнен весь выделенный кусок Chek_FedorГде напортачил? При выполнении условий p5080100.Kblok=Blok.blok5 и p5080100.Pred>1 должны изменятся данные в поле NBlok таблицы p5080100 на значение поля NBL таблицы Blok иначе следующая запись... Команда APPEND BLANK создает новую запись. Последующая Replace изменяет содержимое этой самой новой записи. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2011, 20:28 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Chek_Fedor Где напортачил? При выполнении условий p5080100.Kblok=Blok.blok5 и p5080100.Pred>1 должны изменятся данные в поле NBlok таблицы p5080100 на значение поля NBL таблицы Blok иначе следующая запись... Твой код не отражает сформулированную задачу. Если должны _изменяться_ данные в поле p5080100.NBLOK зачем вставляешь новую запись а не собственно изменяешь проверяемую, и второе, если изменению подвергаешь таблицу p5080100.DBF, то почему перебираешь SCANом таблицу BLOK.DBF. Далее, существует "косяк" при проверке условия, если не нашел запись по нужному условию, нет возврата в область со SCANом. Если ничего не напутано в условии, то можно как одним из способов: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25.
... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2011, 22:16 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Chek_Fedor Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
При выполнении условий p5080100.Kblok=Blok.blok5 и p5080100.Pred>1 должны изменятся данные в поле NBlok таблицы p5080100 на значение поля NBL таблицы Blok иначе следующая запись... В твоем описании алгоритма ни слова про добавление новых записей. APPEND BLANK зачем вставил? Убери все заработает как ты написал. APPEND BLANK - добавляет пустую запись в конец и устанавливает указатель на нее, т.е. следующий за ним Replace пишет в эту пустую запись, а не в ту которую нашел locate И это просто ненужный код: Код: plaintext 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2011, 06:45 |
|
|
start [/forum/topic.php?fid=41&msg=37110067&tid=1583223]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
47ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
others: | 270ms |
total: | 421ms |
0 / 0 |