|
|
|
Этот странный UPDATE
|
|||
|---|---|---|---|
|
#18+
Начну сразу с кода ) Код: plaintext 1. 2. 3. 4. Так вот как сделать чтобы строки сравнивались по полному вхождению. А то получается, что если в cur_slave есть запись 100.1, а в cur_protocol ее нет, но есть 100.10, то флаг установится. А записи-то нет. SCAN'ом неохота пользоваться, как-то громоздко ,) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2006, 10:41 |
|
||
|
Этот странный UPDATE
|
|||
|---|---|---|---|
|
#18+
SET ANSI OFF С уважением, Алексей ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2006, 10:44 |
|
||
|
Этот странный UPDATE
|
|||
|---|---|---|---|
|
#18+
Вообще-то наоброт SET ANSI ON OFF - это значение по умолчанию. И оно как раз сравнивает по первым символам. Точнее, до истечения символов в самом коротком из сравниваемых строк. Если не хочется возится с настройками, то надо дополнить все сравниваемые строки до фиксированной длины пробелами при помощи функции PADR(): Код: plaintext 1. 2. 3. Здесь число 10 я поставил условно. Вместо него поставьте свое значение равное предельно возможной длине полученных выражений. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2006, 10:53 |
|
||
|
Этот странный UPDATE
|
|||
|---|---|---|---|
|
#18+
Да, виноват, перепутал. Конечно SET ANSI ON, но при этом учти, что эта установка имеет областью действия текущюю сессию данных, т.е. для Private Data Session надо SET ANSI ON выдавать каждый раз при запуске формы. С уважением, Алексей ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2006, 11:01 |
|
||
|
Этот странный UPDATE
|
|||
|---|---|---|---|
|
#18+
А еще лучше использовать оператор '==' : String1==String2 И не озадачиваться :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2006, 15:35 |
|
||
|
Этот странный UPDATE
|
|||
|---|---|---|---|
|
#18+
Сергей А.М.А еще лучше использовать оператор '==' : String1==String2 И не озадачиваться :)Не лучше. Поскольку выражения с этим оператором не оптимизируются. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2006, 17:58 |
|
||
|
Этот странный UPDATE
|
|||
|---|---|---|---|
|
#18+
Сергей А.М.А еще лучше использовать оператор '==' : String1==String2 И не озадачиваться :) Подскажите как использовать этот оператор в конструкции Field1 IN (...) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2006, 19:28 |
|
||
|
Этот странный UPDATE
|
|||
|---|---|---|---|
|
#18+
Uггi Сергей А.М.А еще лучше использовать оператор '==' : String1==String2 И не озадачиваться :)Не лучше. Поскольку выражения с этим оператором не оптимизируются. Для Select-SQL - оптимизируются. По сути, "==" означает локальную настройку SET ANSI ON для сравниваемого выражения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2006, 19:34 |
|
||
|
Этот странный UPDATE
|
|||
|---|---|---|---|
|
#18+
ВладимирМ Подскажите как использовать этот оператор в конструкции Field1 IN (...) Думаю, можно написать Код: plaintext 1. 2. Предусматривая последующее замечание, задаю встречный вопрос: Код: plaintext 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2006, 20:09 |
|
||
|
Этот странный UPDATE
|
|||
|---|---|---|---|
|
#18+
Сергей А.М.Думаю, можно написать... Написать может и можно, а смысл? Сергей А.М.Почему так? Потому что ТАК не работает! Ибо вопрос упирается в смысл ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2006, 22:00 |
|
||
|
Этот странный UPDATE
|
|||
|---|---|---|---|
|
#18+
Сергей А.М.Предусматривая последующее замечание, задаю встречный вопрос: Код: plaintext 1. 2. 3. 4. 5. 6. 7. На самом деле, то , что второй запрос выдает ошибку вполне нормально, поскольку результатом подзапроса будет выборка из 3 записей Код: plaintext А вот то, что использование тождественного равенства позволяет выполнить запрос вызывает недоумение. Почему, собственно? Ведь по прежнему подзапрос возвращает те же 3 записи. Сильно похоже на то, что тождественное равенство работает как INNER JOIN. Слегка изменяю пример Код: plaintext 1. 2. 3. 4. 5. Т.е. 2 совершенно одинаковые записи. В результате _TALLY=4 (т.е. обновились 4 записи) и в таблице имеем в поле id значения "11". Каждая запись обновилась 2 раза (!) Правда, такое поведение было в VFP6, а в VFP9 обновляются только 2 записи. Я продублировал этот вопрос в FoxClub. Может там скажут что полезное по этому поводу http://forum.foxclub.ru/read.php?29,196896 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2006, 23:45 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=33668157&tid=1591900]: |
0ms |
get settings: |
8ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
56ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
| others: | 219ms |
| total: | 361ms |

| 0 / 0 |
