BUG - possible UPDATE bug in multi-record?

Поиск
Список
Период
Сортировка
От Keith Gray
Тема BUG - possible UPDATE bug in multi-record?
Дата
Msg-id 3BCE28F9.7AFBBF39@heart.com.au
обсуждение исходный текст
Список pgsql-odbc
Using this style of command through an SQL tool it
decrements each row in the list by 1 cent.

UPDATE GeneralLedger
SET CBalPer0 = CBalPer0 + (-0.01),
PBalPer0 = PBalPer0 + (-0.01)
WHERE AccountSequence IN (56,54,3,2)

(I only use the brackets to handle sign of amount
as in next example)


Trying to execute it through ODBC...

    Amount = -0.01
    AccountSequence = "(56,54,3,2)"
    SQL= "UPDATE GeneralLedger " & _
         "SET CBalPer0 = CBalPer0 + (" & Amount & "), " & _
         "PBalPer0 = PBalPer0 + (" & Amount & ") " & _
         "WHERE AccountSequence IN " & AccountSequenceList

    myConnection.Execute(SQL)

...causes movements in other accounts and incorrect balances!

I am trying with 2 separate UPDATE statements...

    SQL= "UPDATE GeneralLedger " & _
         "SET CBalPer0 = CBalPer0 + (" & Amount & "), " & _
         "WHERE AccountSequence IN " & AccountSequenceList

    myConnection.Execute(SQL)

    SQL= "UPDATE GeneralLedger " & _
         "SET PBalPer0 = PBalPer0 + (" & Amount & ") " & _
         "WHERE AccountSequence IN " & AccountSequenceList

    myConnection.Execute(SQL)

...and yes this does work.

--
Keith Gray

Technical Development Manager
Heart Consulting Services P/L
mailto:keith@heart.com.au

В списке pgsql-odbc по дате отправления:

Предыдущее
От: Hiroshi Inoue
Дата:
Сообщение: Re: error message: the driver doesn't support the version of
Следующее
От: Hiroshi Inoue
Дата:
Сообщение: Re: BUG - possible UPDATE bug in multi-record?