![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Help me !
Starter2 © (2002-09-02 16:36:00)UPDATE "LsN" D
SET D.LsNSumma = D.LsNSumma/100*
(SELECT T.TmPrem FROM "TempPr" T
WHERE (D.LsNYear = T.TmYear) AND (D.LsNMonth = T.TmMon))
WHERE (D.LsNKind="Премия")
Не меняет в таблице LsN ничего !
UPDATE "LsN" D
SET D.LsNSumma = D.LsNSumma*
(SELECT T.TmPrem FROM "TempPr" T
WHERE (D.LsNYear = T.TmYear) AND (D.LsNMonth = T.TmMon))
WHERE (D.LsNKind="Премия")
Все меняет прапвильно !
Отличие во 2-й строке (если ставлю "/100", то перестает работать)
Starter2 (2002-09-02 19:41:00) [1]>Prooksius © (02.09.02 19:36)
А транзакцию комитишь? Или там такого нет? :)
Я же описал по крайней мере раза 3 как я все делаю !
Если бы я не согласовывал изменения, то оно бы не работало в ОБОИХ случаях, но ведь это не так :>(
>Val © (02.09.02 19:27)
Все заработасо с кастаньем. Но почему не работает без него, убей-не пойму !
Prooksius (2002-09-02 19:36:00) [2]А транзакцию комитишь? Или там такого нет? :)
Starter2 (2002-09-02 19:34:00) [3]>SET LsNSumma=LsNSumma+CAST(10 AS FLOAT)
Заработало !
Но какого хрена, спрашивается ? Глюки в доме Борланда ?
Val (2002-09-02 19:27:00) [4]как интересно, а попробуйте cast применить
Starter2 (2002-09-02 19:21:00) [5]Маразм какой-то ...
Беру строку и добавляю другую колонк подобного типа
a-Dec(10,2) b-SMALLINT
SET a=a+b+2 - работает !
убираю
SET a=a+2 - не работает !
Мистика ?????
Starter2 (2002-09-02 19:17:00) [6]>Val © (02.09.02 19:09)
Я не просто жму рефреш, я закрываю окно вообще, потом его снова открываю - ни фига. Мне что, винду перегрузить что ли ?
Val (2002-09-02 19:09:00) [7]>Starter2 (02.09.02 19:01)
я вижу, что это за запрос. я не собираюсь с вами спорить и повторять предыдущий мой пост. как вы думаете, почему у меня меняет, а у вас нет? Лень что-ли кнопку рефреша нажать?
Starter2 (2002-09-02 19:01:00) [8]>Val © (02.09.02 18:35)
Я же сказал, запрос типа Update. Он ничего не возвращает. Я его тупо запускаю SQL-експлорером (больше ничего активного нет, ни одной проги, кроме Касперского и WinAmp), он выполняется, если справа в выражении SET не указано имя модифицируемого поля (напрмер, a = 20), рез-т видно сразу по переклацанию таблицы (ушел с тек.таблицы, снова пришел-посмотрел). Если же я в этот запрос ПРОСТО добавлю "a+" будет a=a+20 и запрос вообще ничего не меняет !
Val (2002-09-02 18:35:00) [9]>Starter2 (02.09.02 18:20)
в вашем случае пофиг, когда делить, когда умножать. зря вы нервничаете.
Дело в том, что я вообще могу убрать подзапрос и оставить a=a+1,
результата все равно нет !
чушь городите, вы набор обновляете перед тем как посмотреть результаты выполнения???
AL2002 (2002-09-02 18:35:00) [10]>МНЕ НАДО РАЗДЕЛИТЬ, БЛИН, А ПОТОМ УМНОЖИТЬ !
Так, блин, возьми в скобки.
Starter2 (2002-09-02 18:20:00) [11]AL2002 © (02.09.02 18:09)
>Все меняет прапвильно !
МНЕ НАДО РАЗДЕЛИТЬ, БЛИН, А ПОТОМ УМНОЖИТЬ !
>Val © (02.09.02 18:11)
>СУБД какая?
у вас подзапрос точно одно значение возвращает?
СУБД .db(Paradox)
Подзапрос работает один-ко многим, т.е. по одной записи TmPrem
меняется несколько с такими же ключами.
Почему оно работает пока я не использую в выражении SET имя самого модернизируемого поля вместе с константой.
Дело в том, что я вообще могу убрать подзапрос и оставить a=a+1,
результата все равно нет !
AL2002 (2002-09-02 18:15:00) [12]>(SELECT T.TmPrem FROM "TempPr" T
> WHERE (D.LsNYear = T.TmYear) AND (D.LsNMonth = T.TmMon))
> WHERE (D.LsNKind="Премия")
Может, я и не прав, но ты то, что выше, лучше присвой переменной, а потом прибавляй.
Val (2002-09-02 18:11:00) [13]СУБД какая?
у вас подзапрос точно одно значение возвращает?
AL2002 (2002-09-02 18:09:00) [14]>Все меняет прапвильно !
Так чё тебе нужно?
Starter2 (2002-09-02 18:09:00) [15]Не проходит даже
SET LsNSumma = LsNSumma/100
Starter2 (2002-09-02 18:08:00) [16]>Val © (02.09.02 18:04)
а где результаты смотрите?
Да хоть SQL-еxp-м, хоть десктопом..
Все закрывал-переоткрывал - рез-т тот же !
Val (2002-09-02 18:04:00) [17]>Starter2 (02.09.02 17:47)
а где результаты смотрите?
Starter2 (2002-09-02 18:04:00) [18]ХЭЛП МИ !
ХЭЛП МИ ЭВРИБАДИ ?8-(0)
Starter2 (2002-09-02 17:47:00) [19]>Val
Не понял юмора ! Но на всякий случай попробовал - результат тот же, что и при делении на 100
Val (2002-09-02 17:38:00) [20]чудеса какие :(
а как насчет *0.01?