Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
как обновить одно поле одной конкретной записи?
|
|||
|---|---|---|---|
|
#18+
В цикле прохожу по таблице n1reccount=reccount() for i=1 to n1reccount goto i проверяю определенное условие и если оно выполняется нужно поменять значение одного поля текущей записи Подскажите команду? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2004, 15:33 |
|
||
|
как обновить одно поле одной конкретной записи?
|
|||
|---|---|---|---|
|
#18+
Ну насколько я помню есть REPLACE FOR. replace field1 with var1 for <а здесь ваше условие> и не надо никаких циклов. А кстати, какой Fox? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2004, 15:48 |
|
||
|
как обновить одно поле одной конкретной записи?
|
|||
|---|---|---|---|
|
#18+
replace Fld1 with Val1 или без for update Alias set Fld1 = Val1 where <условие> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2004, 15:49 |
|
||
|
как обновить одно поле одной конкретной записи?
|
|||
|---|---|---|---|
|
#18+
Как я понимаю эти команды обновляют множество записей по определенному условию - это не очень удобно в моем случае, даже очень неудобно. Мне же нужно именно текущую запись изменить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2004, 15:57 |
|
||
|
как обновить одно поле одной конкретной записи?
|
|||
|---|---|---|---|
|
#18+
Дело в том, что условие тоже не простое: нужно сравнить два поля записи и если расхождение меньше,чем на два символа, выбрать текущую запись в другую таблицу. replace for может с натяжкой и пойдет, но это уже по-моему некоторое извращение Наверное нужно будет писать функцию ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2004, 16:04 |
|
||
|
как обновить одно поле одной конкретной записи?
|
|||
|---|---|---|---|
|
#18+
как-то так select * from t1 into table t2 where (len(alltrim(f1))-len(alltrim(f2)))<2 или примерно так select * from t1 into table t2 where f(f1,f2)<2 где f ваша функция ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2004, 18:05 |
|
||
|
как обновить одно поле одной конкретной записи?
|
|||
|---|---|---|---|
|
#18+
vitalenergyВ цикле прохожу по таблице n1reccount=reccount() for i=1 to n1reccount goto i проверяю определенное условие и если оно выполняется нужно поменять значение одного поля текущей записи Довольно странно - вам известно о существовании SCAN ... ENDSCAN (необязательно подсчитывать число записей и использовать цикл по FOR)? SCAN .... здесь и проверяйте ваше условие и меняйте значение .... ENDSCAN Можно GO TOP ( если нужно начинать сканирование с какой хотите позиции, не используйте GO TOP) DO WHILE NOT EOF() .... здесь и проверяйте ваше условие и меняйте значение .... SKIP ENDDO Впрочем, непонятно. чем вас групповой Replace не устраивает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2004, 18:13 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=32816873&tid=1595277]: |
0ms |
get settings: |
6ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
104ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 224ms |
| total: | 423ms |

| 0 / 0 |
