c#关于向数据库插入日期为空为null时操作:

iam老于 2019-03-05 10:50:54
图1:有时候我们向数据库插入日期的时候,当从控件获取到的日期为空时,就插入DBNULL.Value 图2: 当我们从数据库获取到的日期为null时,值为空 ps:关键是object类型的使用
...全文
829 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
exception92 2019-03-06
  • 打赏
  • 举报
回复
可为空我一般使用空字符串来表示日期
吉普赛的歌 2019-03-06
  • 打赏
  • 举报
回复
数据库的字段,应统一为not null。
虽然这样比较粗暴,但可以省去很多不必要的麻烦。
比方说,datetime如果为NULL,那对应C#应该是啥?
如果用 DateTime? 可空类型,必然有性能损耗。
如果用 DateTime,则null 无法对应,必须特殊处理为1900-01-01等特定值。

Null传入、取出都麻烦,直接 not null , 原本null null 的给特定值就是了
小眼聚光~ 2019-03-06
  • 打赏
  • 举报
回复
貌似插入null值可以使用dbnull.value,说错勿怪哈
liusa1997 2019-03-06
  • 打赏
  • 举报
回复
你如果是分享经验感受不如写个博客更有意义
gw6328 2019-03-06
  • 打赏
  • 举报
回复
不要为空,用默认代替 1900-01-01
Benjay77 2019-03-05
  • 打赏
  • 举报
回复
你想表达啥?
iam老于 2019-03-05
  • 打赏
  • 举报
回复
引用 2 楼 娃都会打酱油了的回复:
判断object的地方再判断个!=null
我不是请求帮忙。。是分享来着
iam老于 2019-03-05
  • 打赏
  • 举报
回复
有时候日期类型为空或null时,插入到数据库会变成1900-01-01这些初始日期,我的目的就是避免这种情况出现
iam老于 2019-03-05
  • 打赏
  • 举报
回复
引用 3 楼 张天星的回复:
你这两个Set和Get,出什么问题了么
get是取值传到数据库,set是送数据库取值赋给控件,这样写是为了不让数据库日期类型字段出现默认的值1900-01-01。也许你们有更好的办法
张天星 2019-03-05
  • 打赏
  • 举报
回复
你这两个Set和Get,出什么问题了么
  • 打赏
  • 举报
回复
判断object的地方再判断个!=null

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧