Question

Je suis en train de mettre à niveau quelques applications internes d'ADS 7.1 à 8.1.

On m'a dit il y a quelque temps qu'il y avait des changements dans les valeurs de retour de la fonction AVG () ainsi que des calculs de division, mais je ne trouve aucune documentation sur ces changements.

Quelqu'un sait-il de quoi je parle ou avez-vous un lien expliquant les détails?

Était-ce utile?

La solution

Les "Effets de la mise à niveau vers la version 8.1" La rubrique du fichier d’aide contient un petit paragraphe sur la modification, mais ne rentre pas dans les détails.

Fondamentalement, à partir de la version 8.1, Advantage adhère désormais au standard SQL en ce qui concerne la division des nombres entiers. La partie décimale est tronquée dans les expressions de division entière, ce qui entraînait auparavant un résultat en virgule flottante.

Pour faire face à cette modification, vous devrez peut-être transtyper certaines expressions si vous souhaitez toujours qu'elles produisent un type de données à virgule flottante. Par exemple:

Ceci:

select int1 / int2 from mytable;

Devrait être remplacé par:

select cast( int1 as sql_float ) / int2 from mytable;
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top