Kompilera MOF-kod med Floating-Point-värden
MOF-kompilatorn accepterar ett flyttalvärde som angetts för en egenskap som inte är en flytande punkt. Värdet avrundas uppåt eller nedåt och lagras som ett icke-flytande punktnummer. Den här situationen kan orsaka oväntade resultat.
Följande MOF-kodexempel definierar en klass med namnet abc i ett namnområde med namnet "Test". Den här MOF-koden kompileras utan fel, men du kan inte fråga efter flyttalsvärdet som definierats för egenskapen exempelUint16 i den instans som koden skapar.
#pragma namespace ("\\\\.\\Root")
instance of __Namespace
{
Name = "Test";
};
#pragma namespace ("\\\\.\\Root\\test")
Class abc
{
[KEY] String testID ;
Uint16 exampleUint16;
Real64 exampleReal64;
};
Instance of abc
{
TestID ="exampleID";
exampleUint16 = 1000.4;
};
Om du utfärdar följande fråga får du en felkod som anger en ogiltig fråga.
SELECT * FROM abc WHERE exampleUint16 = 1000.4
Följande fråga hittar dock den angivna instansen.
SELECT * FROM abc WHERE exampleUint16 = 1000
Relaterade ämnen