求sql server null值解决方法
在sql server 数据库中假设表 Tab1有 列Fid1~Fid10(allow nulls) ,一旦insert into Tab1(Fid1,fid2) values("**","**") 则出现Fid3~Fid10数据为空 在使用SqlDataReader.Read()时,Fid1~Fid10便都要判断,并且有的查询都会忽略null的 行数据,现在小弟有三种方法备选:1.在Fid11~Fid(10) Default("") 不知道对数据库性能影响如何?
2.在插入时,统一 insert into Tab1(Fid1,...,Fidn) values("**" ,....,"") 插入时每一行都不放过。
3.读取的时候,可能出现的行都进行isnull判断 不知道性能要下降多少。
综上不知道如何取舍,如果各位高手还有更好的方法,请赐教。
--------------------编程问答-------------------- 我选第二个 --------------------编程问答-------------------- 2
插入的时候每一列都指定,这样心里才有底 --------------------编程问答-------------------- 在SQL设置默认值就好了,
第一个,不过还是要用第二方法,INSERT TB VALUES(DEFAULT) --------------------编程问答-------------------- 选择第3种
null和""的含义是不一样的! --------------------编程问答-------------------- 我也选第三个,如果你DB设计没问题的话,设计该字段不为空一定有需求在里面,那么对应的前台输入就必须要判断. 如果你DB设计有问题的话,那就直接改DB. --------------------编程问答--------------------
顶吧 --------------------编程问答-------------------- 三个一起用,这才是最安全的 --------------------编程问答-------------------- 插入的时候有默认值 --------------------编程问答-------------------- 1
Fid11~Fid(10) Default("")
补充:.NET技术 , C#