array and revExecuteSQL
axwald
axwald at gmail.com
Wed May 15 09:46:00 EDT 2019
Hi,
the notation for revExecuteSQL you mention only works with 1-digit numbers
(in my LC 6.7.10).
Named arrays and 2- or more digit entries don't work - LC doesn't translate
'em. You can easily check this with your favorite network sniffer:
> put "bText" into myArr[11]
> put "99" into myArr[22]
> put "UPDATE `t_test` SET `Text` = :11 WHERE `Nummer` = :22;" into StrSQL
sends this to the database:
> UPDATE `t_test` SET `Text` = :11 WHERE `Nummer` = :22;
and this fails, for sure.
Correctly used:
> put "bText" into myArr[1]
> put "99" into myArr[2]
> put "UPDATE `t_test` SET `Text` = :1 WHERE `Nummer` = :2;" into StrSQL
sends this to the database:
> UPDATE `t_test` SET `Text` = "bText" WHERE `Nummer` = "99";
So the error is in LC, dunno if the newer versions do better. Or the
limitation just isn't mentioned in the dictionary.
And since LC obviously just does a simple & limited replace, you could use
merge() as well.
Have fun!
-----
• Livecode programming until the cat hits the fan •
--
Sent from: http://runtime-revolution.278305.n4.nabble.com/Revolution-User-f278306.html
More information about the use-livecode
mailing list