首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > VFP >

关于怎么改变Sql server字段Null自动变为0的探讨

2012-04-10 
关于如何改变Sql server字段Null自动变为0的探讨?大家有没有体会过,当把sql server中表数据引入vfp临时表

关于如何改变Sql server字段Null自动变为0的探讨?
大家有没有体会过,当把sql server中表数据引入vfp临时表时,如果有字段为Null,还需要判断一下,比如:
if aaa=0 or isnull(null),很麻烦,我的方法一般有2种:
1、在sql server 建表时,把字段默认值设为0或者""
2、引入临时表时,把字段中的Null判断后都替换为0 或"" repl aaa with 0 for isnull(aaa)
-------------------------------------------------------------
想问一下大家,有没有一条命令比如:set null off 
(只要一执行,就不会有null值,所有null值要么是0,要么是“”)
谢谢!


[解决办法]
这样的命令我不记得有
但是你可以这样:
设SQL Server中有一表名为Table_1,表中有字符型列aa,int型列bb, 这两列都有些行是空值,可以在你的VFP代码中写
nReturnValue=SQLEXEC(lnconnHandle,[select isnull(aa,''),isnull(bb,0) from Table_1],[临时表名])
这不也是一劳永逸的么?
[解决办法]
字段允许为空(NULL)是有特殊含义的:表示该记录该字段从未赋过值,这一点在大型数据处理中是非常有用的,虽然会给后续工作带来一些不便。
SQL 同时提供了 ifnull(名, 默认值) 这个函数来统一查询结果

虽然 vfp 的自由表不存在空值,但数据库(DBC)中的表是允许有空值的,并且不影响计算

[解决办法]

探讨
字段允许为空(NULL)是有特殊含义的:表示该记录该字段从未赋过值,这一点在大型数据处理中是非常有用的,虽然会给后续工作带来一些不便。
SQL 同时提供了 ifnull(名, 默认值) 这个函数来统一查询结果

虽然 vfp 的自由表不存在空值,但数据库(DBC)中的表是允许有空值的,并且不影响计算

热点排行