mysql 问题汇总

来源:互联网 发布:许嵩所有歌曲知乎 编辑:程序博客网 时间:2024/05/19 13:28

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



















0 0
原创粉丝点击