数据库表的创建为什么要给定默认值
我在数据库创建新表的时候,被要求varchar、int、bingint等都要给定默认初始值,为什么要这样??
对项目开发有什么影响吗?
------解决方案--------------------这个也业务有关系,单纯从数据库的角度是可以没有默认值的,但是从业务的角度经常是需要有默认值的。
------解决方案--------------------语句贴出来看看?如果选允许为空,那应该不会要求你用默认值的,主键除外
------解决方案--------------------有默认值,代码就不用每次去判断是否为空。
------解决方案--------------------有了默认值时,insert时该字段可以不赋值的;
sql server一些字符字段或日期字段如果可以为空的话,建议用上默认值,避免NULL的出现查询时会行扫瞄的,影响查询速度
------解决方案--------------------
+
业务需求上限定。数据库并没有这个要求。
------解决方案--------------------楼上说的很对,是业务的限定,可以为空。但是很多业务上为了避免NULL的数据都会限制一些默认值