2、 它的存储方式应该都是一样的, 在数据库中的某一块的某一个地方,写上它的值'' or NULL 这没有什么特别,就像其它文件存储一样!欢迎高手不吝指正!!
NULL表示值未知或不可用,''表示0长的串,一串存贮,NULL可认为是系统的一个常量,至于NULL如何存储,那要问做系统的人是如何处理的,不同的系统做法不一样.关于NULL使用时要注意: 1,如果字段定义允许NULL,则可用 IS [NOT] NULL,否则只能用=NULL 2, SET ANSI_NULLS OFF时不可以用NULL值,只能用''或LEN(FLD)=0代替,所以一般不要设置OFF
NULL表示值未知或不可用,''表示0长的串,一串存贮,NULL可认为是系统的一个常量,至于NULL如何存储,那要问做系统的人是如何处理的,不同的系统做法不一样.关于NULL使用时要注意: 1,如果字段定义允许NULL,则可用 IS [NOT] NULL,否则只能用=NULL 2, SET ANSI_NULLS OFF时不可以用NULL值,只能用''或LEN(FLD)=0代替,所以一般不要设置OFF
''是一个值!它确却地存放在磁盘的某一个区域, 而NULL只是SQL Server的一个常量(不好意思,Pascal是说常量,不知道SQL Server是不是?)当有一表 Field Type Value A Char(10) '' <---------它算一个值,占据着一定的位置 B Char(20) <---------这什么也没有,当Select出来时,系统以NULL填补,你说它会有地址吗?
它的存储方式应该都是一样的,
在数据库中的某一块的某一个地方,写上它的值'' or NULL
这没有什么特别,就像其它文件存储一样!欢迎高手不吝指正!!
1,如果字段定义允许NULL,则可用 IS [NOT] NULL,否则只能用=NULL
2, SET ANSI_NULLS OFF时不可以用NULL值,只能用''或LEN(FLD)=0代替,所以一般不要设置OFF
1,如果字段定义允许NULL,则可用 IS [NOT] NULL,否则只能用=NULL
2, SET ANSI_NULLS OFF时不可以用NULL值,只能用''或LEN(FLD)=0代替,所以一般不要设置OFF
是按此字段属性分配地址?
还是用一特殊的分配方式代替这个字段的内存地址,或者在内存中根本就没有这个字段的地址?
''是一个值!它确却地存放在磁盘的某一个区域,
而NULL只是SQL Server的一个常量(不好意思,Pascal是说常量,不知道SQL Server是不是?)当有一表
Field Type Value
A Char(10) '' <---------它算一个值,占据着一定的位置
B Char(20) <---------这什么也没有,当Select出来时,系统以NULL填补,你说它会有地址吗?
如果字段中的值为null时,当此字段调入内存内存时,系统分配存储单元,大小用定义的尺寸,有指向该单元的指针,但存储内容未知.
你可以测试一张空表占有多少内存便知.
NULL则是什么都没有,根本没有字符串这个概念