Gambas error door databank update: “wanted Integer ..”

Bij een bestaande applicatie in gambas2 duikt een fout op na een update van de database server:

Type mismatch: wanted Integer, got String instead

Net voor het probleem opdook werd de server waarop de MySQL databank draaide, geupdate van
mysql 3.23.x naar mysql 5.5.x

De reaktie van de database is veranderd bij een ontbrekende waarde; in plaats van een 0 (nul als getal), komt nu een andere waarde terug (in debug getoond als -23495771):

De test die vroeger het onderscheid maakte of data aanwezig was of niet in het veld fld_diff in een resultset resRecord:

IF resRecord!fld_diff > 0

is nu vervangen door een combinatie met een test op het type van het veld:

IF TypeOf(resRecord!fld_diff) = gb.Integer
    IF resRecord!fld_diff > 0

Pas als je weet dat het een getal is kan je de waarde gaan testen.

Daarna werkte het programma terug.

This entry was posted in Databank, Gambas2. Bookmark the permalink.