【问题标题】:odbc datetime convertion in erlangerlang中的odbc日期时间转换
【发布时间】:2012-03-19 19:56:44
【问题描述】:

由于某种原因,需要将sql时间戳YYYY-MM-DD HH:MM:SS转换为erlang时间形式{{Y,M,D},{H,M,S}}。

幸运的是,当我查询数据库时,返回值已经形成为 {{Y,M,D},{H,M,S}}。

喜欢:

     [{4,null,null,null,null,
              {{2012,12,17},{14,54,4}}, % time-stamp already convert
                                        % from 2012-12-17 14:54:04
                    0,678,51,61}] 

然后还需要将erlang时间形式{{Y,M,D},{H,M,S}}转换为SQL时间戳形式YYYY-MM-DD HH:MM:SS, 经过一番搜索,没有这样的直接功能可以做到这一点。 所以我把乐趣写在下面

 my_time() ->
      {{Y,Mo,D},{H,Mi, S}} = erlang:localtime(),
      TSString = 
    integer_to_list(Y)++"-"++ 
            integer_to_list(Mo)++"-"++ 
            integer_to_list(D)++" "++
        integer_to_list(H) ++ ":" ++ 
            integer_to_list(Mi) ++ ":" ++ 
            integer_to_list(S),
      TSString.

它有效,但我不喜欢它。有没有其他方法可以做到这一点?

【问题讨论】:

    标签: sql erlang


    【解决方案1】:

    使用 lib_io:format() 会稍微清理一下:

    my_time() ->
     {{Y,Mo,D},{H,Mi, S}} = erlang:localtime(),
     io_lib:format("~4.10.0B-~2.10.0B-~2.10.0B ~2.10.0B:~2.10.0B:~2.10.0B", [Y, Mo, D, H, Mi, S]).
    

    【讨论】:

      猜你喜欢
      • 2010-10-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-21
      • 1970-01-01
      • 2012-12-25
      相关资源
      最近更新 更多