V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
jianghu52
V2EX  ›  程序员

PostgreSQL 的默认时间格式,搞不定啊!!!

  •  
  •   jianghu52 · Dec 23, 2013 · 10608 views
    This topic created in 4520 days ago, the information mentioned may be changed or developed.
    用户不用mysql,可是用postgresql了。于是我这种小白开始来填坑了。
    最基础的一个问题。给PostgreSQL设置默认的时间字段。
    客户给的sql不能执行

    ALTER TABLE aaa ADD COLUMN PASSWORD_up_DATE TIMESTAMP WITHOUT TIME ZONE NOT NULL DEFAULT TO_CHAR(CURRENT_TIMESTAMP,'YYYY-MM-DD HH24:MI:SS');

    报错说是 PASSWORD_up_DATE是TIMESTAMP类型的字段,但是插入的是varchar的数值。
    我改成

    ALTER TABLE aaa ADD COLUMN PASSWORD_up_DATE varchar(40) NOT NULL DEFAULT TO_CHAR(CURRENT_TIMESTAMP,'YYYY-MM-DD HH24:MI:SS');
    过了。
    我想请问的是如果要用timestamp 的话,要怎么写这个sql语句?
    3 replies    1970-01-01 08:00:00 +08:00
    jianghu52
        1
    jianghu52  
    OP
       Dec 23, 2013
    PS:sql语句改成以下这样也可以,
    ALTER TABLE aaa ADD COLUMN PASSWORD_up_DATE TIMESTAMP WITHOUT TIME ZONE NOT NULL DEFAULT now();
    但是问题是 最后出来的时间格式是2013-12-23 15:47:10.138 这样的。不知道为什么会这样
    glongzh
        2
    glongzh  
       Dec 23, 2013
    将now()替换成LOCALTIMESTAMP(0)
    jianghu52
        3
    jianghu52  
    OP
       Dec 23, 2013
    @glongzh 好用。谢谢。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5354 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 08:20 · PVG 16:20 · LAX 01:20 · JFK 04:20
    ♥ Do have faith in what you're doing.