当前位置 博文首页 > 启舰:mysql 问题汇总

    启舰:mysql 问题汇总

    作者:[db:作者] 时间:2021-06-12 21:44

    1、MySQL设置当前时间为默认值的方法

    由于MySQL目前字段的默认值不支持函数,所以以
    create_time datetime default now()
    的形式设置默认值是不可能的。

    代替的方案是使用TIMESTAMP类型代替DATETIME类型。
    CURRENT_TIMESTAMP :当我更新这条记录的时候,这条记录的这个字段不会改变。
    CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP :当我更新这条记录的时候,这条记录的这个字段将会改变。即时间变为了更新时候的时间。(注意一个UPDATE设置一个列为它已经有的值,这将不引起TIMESTAMP列被更新,因为如果你设置一个列为它当前的值,MySQL为了效率而忽略更改。)如果有多个TIMESTAMP列,只有第一个自动更新。

    MySQL设置当前时间为默认值的问题我们经常会遇到,下面就为您介绍MySQL设置当前时间为默认值的实现全步骤,希望对您能有所启迪。
    数据库:test_db1
    创建表:test_ta1
    两个字段:id (自增 且为主键),
    createtime 创建日期(默认值为当前时间)
    方法一、是用alert table语句:

    use test_db1;
    create table test_ta1(
    id mediumint(8) unsigned not nulll auto_increment,
    createtime datetime,
    primary key (id)
    )engine=innodb default charset=gbk;
    alert table test_ta1 change createtime createtime timestamp not null default now();
    方法二、直接创建方便:
    use test_db1;  
    create table test_ta1(  
    id mediumint(8) unsigned not nulll auto_increment,  
    createtime timestamp not null default current_timestamp,  
    primary key (id)  
    )engine=innodb default charset=gbk;  

    参考网址:(1)http://database.51cto.com/art/201011/234564.htm

    ? ? ? ? ? ? ? ? ? ? (2)http://blog.sina.com.cn/s/blog_516c75860100beyr.html



















    下一篇:没有了