MOF 컴파일러는 비플로아팅 지점 속성에 지정된 부동 소수점 값을 허용합니다. 값은 올림 또는 내림되어 부동소수점이 아닌 숫자로 저장됩니다. 이 경우 예기치 않은 결과가 발생할 수 있습니다.
다음 MOF 코드 예제에서는 "Test"라는 네임스페이스에 abc 클래스를 정의합니다. 이 MOF 코드는 오류 없이 컴파일되지만 이 코드가 만드는 인스턴스에서 예제Uint16 속성에 대해 정의된 부동 소수점 값을 쿼리할 수는 없습니다.
#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;
};
다음 쿼리를 실행하면 잘못된 쿼리를 나타내는 오류 코드가 표시됩니다.
SELECT * FROM abc WHERE exampleUint16 = 1000.4
그러나 다음 쿼리는 표시된 인스턴스를 찾습니다.
SELECT * FROM abc WHERE exampleUint16 = 1000
관련 항목