ITPub博客

首页 > 数据库 > Oracle > C#插入Oracle中Timestamp类型数据

C#插入Oracle中Timestamp类型数据

原创 Oracle 作者:Hoegh 时间:2015-04-10 09:21:57 1 删除 编辑
        在项目开发中,要求保存毫秒精度的时间,C#中DateTime类型虽然有Millsecond属性,但是插入Timestamp类型的Oracle数据列时,无法保存毫秒数据。
以下是我的开发环境:
  • 操作系统:Windows
  • 开发工具:Visual Studio 2010
  • 开发语言:C#
  • 数据库:Oracle 10.2.0.4

       在以前的项目中也遇到过类似问题,当时是采取保存字符串的方法来解决的。具体的,在程序的实体类中定义字段类型为String,在数据库中定义对应列为Varchar2(),通过调用DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff")语句来保存毫秒精度时间。这样做,功能可以实现,但是需要在存库和读库时进行转换,麻烦,想找到一个一劳永逸的解决办法。     
       和弟兄们沟通后,认为既然DataTime保存的有毫秒时间,但是保存后却丢失了,很有可能是和微软的Oracle驱动(System.Data.OracleClient)有关,可以尝试一下使用Oracle的官方驱动(Oracle.ManagedDataAccess.Client)。果然,更换驱动后,毫秒数据顺利保存,问题得到圆满解决。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/30162081/viewspace-1561171/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2015-03-13

  • 博文量
    132
  • 访问量
    2219945