最近开发的过程中遇到一种情况,在.net 程序中获取的Datetime格式的时间,在存入SQL server中,毫秒部分丢失。

这个是个很奇怪的状况,因为在Debug的时候,Datetime的变量的确是拥有毫秒信息的。但是在插入数据库以后,毫秒的信息缺不见了。

后来找到了微软官方的介绍,Datetime在向SQL server 插入数据时,毫秒级别的数据会丢失。

这就造成了很麻烦的问题,必须要在插入数据库之前,手动把日期转换为带有毫秒的字符串才行。

因为要把DateTime.Now换为DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:fff");

原本在实体类定义的Datetime的字段,就要变为String。

SQL server 端的日期存储是Datetime格式的,String类型的字符串只要符合格式都可以顺利插入。

不过Nhibernate这边,数据库格式与映射文件格式不同,暂时不知道是否有影响。

此外,由于我的疏忽,第一次修改的时候

DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:fff");

被我写成了DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss:fff");

原本我只知道时间转换月份和分钟因为都是m,所以要区分大小写MM和mm

但是小时一直都没留意,HH和hh也是有区别的。

HH表示格式化后的时间为24小时进制,而hh表示格式化后是12小时进制。

这个写错了,可是非常要命的事情,以后一定要注意才行。

最新文章

  1. 关于ZedGraph
  2. 《CLR.via.C#第三版》第二部分第8,9章节读书笔记(四)
  3. Hammer.js分析(四)——recognizer.js
  4. EasyUI管理后台模板(附源码)
  5. entity framework 新手入门篇(2)-entity framework基本的增删改查
  6. .NET跨平台实践:用C#开发Linux守护进程(转)
  7. GDB 使用大法
  8. uva494 Kindergarten Counting Game
  9. Animations--动画基础
  10. java web 学习三(Tomcat 服务器学习和使用2)
  11. [CSS]三角形
  12. hadoop错误Cannot load libsnappy.so.1 (libsnappy.so.1 cannot open shared object file No such file or directory)!
  13. GridFS
  14. poj 3270 Cow Sorting (置换入门)
  15. 为Play初学者准备的Scala基础知识
  16. openssh/openssl升级到7.4和1.0.2j 源码方式
  17. 第一册:lesson 113.
  18. Tomcat 配置文件server.xml详解
  19. tidb调研
  20. 彻底理解this 的值到底是什么?

热门文章

  1. 关于Homebrew出现GitHub API rate limit错误的解决方法
  2. Linux修复磁盘操作
  3. 分布式锁之二:zookeeper分布式锁2
  4. 微信小程序之如何使用iconfont
  5. C#使用自定义字体
  6. linux平台总线驱动设备模型之点亮LED
  7. Oracle数据库Where条件执行顺序
  8. oracle删除重复数据
  9. spark编译安装 spark 2.1.0 hadoop2.6.0-cdh5.7.0
  10. hibernate反向生成奇葩错误