Atualize várias linhas com valores diferentes em uma única consulta SQL
Eu tenho um banco de dados SQLite com tabelamyTable
e colunasid
, posX
, posY
. O número de linhas muda constantemente (pode aumentar ou diminuir). Se eu sei o valor deid
para cada linha e o número de linhas, posso executar uma única consulta SQL para atualizar todas asposX
eposY
campos com valores diferentes de acordo com o id?
Por exemplo:
---------------------
myTable:
id posX posY
1 35 565
3 89 224
6 11 456
14 87 475
---------------------
Pseudocódigo de consulta SQL:
UPDATE myTable SET posX[id] = @arrayX[id], posY[id] = @arrayY[id] "
@arrayX
e@arrayY
são matrizes que armazenam novos valores para oposX
eposY
Campos.
Se, por exemplo,arrayX
earrayY
contém os seguintes valores:
arrayX = { 20, 30, 40, 50 }
arrayY = { 100, 200, 300, 400 }
... então o banco de dados após a consulta deve ficar assim:
---------------------
myTable:
id posX posY
1 20 100
3 30 200
6 40 300
14 50 400
---------------------
Isso é possível? Estou atualizando uma linha por consulta agora, mas serão necessárias centenas de consultas à medida que a contagem de linhas aumenta. Eu estou fazendo tudo isso no AIR pelo caminho.