Microsoft Dynamics AX不支持许多其他数据库管理系统(DBMS)中可用的空值的概念。Microsoft Dynamics AX中的字段始终具有类型和值。
但是,对于每种数据类型,一个值都被认为是空值(例如,当执行validateField表方法时)。
Type | Value treated as null |
---|---|
Date | 1900-01-01 |
Enum | Element with its value set to 0. |
Integer | 0 |
Real | 0.0 |
String | An empty string |
Time | 00:00:00 |
Any value with its date portion as 1900-01-01 is treated as null, regardless of the time portion value. Therefore the value 1900-01-01T22:33:44 is treated as null. Note Any utcDateTime value with its date portion as 1900-01-01 is displayed as blank by the X++ print statement. Only the value 1900-01-01T00:00:00 is displayed as blank by the Global::info method. That is the value from the DateTimeUtil::MinValue method. |
结果,当validateField方法检查用户是否已在必填字段中输入值时,在整数类型字段中不接受0,在枚举类型字段中不接受第一项,依此类推。
另外,在X ++ SQL中,上表中列出的值在布尔比较中产生false。在非SQL X ++语句中,等于和关系运算符使用这些值的方式与处理其他值的方式相同。
在传统的DBMS中,容器类型的变量以及表类型的类和变量可以为null。如果表类型的所有字段都具有空值,则该类型为空。
留言评论
暂无留言