网上有很多大牛已经写了很多关于MySql的知识和用法,这里只是记录一下一些个人觉得常用的写法和案例
以下仅是模拟,自己做时按需求来定
数据库名:demo
表名:user
字段名
数据库设计
数据类型
长度
可空
约束
备注
ID
id
VARCHAR
64
否
主键
唯一编号
姓名
name
VARCHAR
32
否
无
用户姓名
账号
login_name
VARCHAR
100
否
无
密码
password
VARCHAR
100
否
无
登陆密码
年龄
age
TINYINT
3
是
无
用户年龄
创建时间
created_at
TIMESTAMP
否
无
当前时间
更新时间
updated_at
TIMESTAMP
否
无
最后更新时间
DROP TABLE IF EXISTS `user`;
CREATE TABLE IF NOT EXISTS `user`
(
`id` VARCHAR(64) primary key,
`name` varchar(32) NOT NULL ,
`login_name` varchar(100) NOT NULL,
`password` varchar(100) NOT NULL COMMENT '登陆密码',
`age` TINYINT(3) COMMENT '用户年龄',
`created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
`updated_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
其中,TIMESTAMP类型有以下几种用法
1.在创建新纪录和修改现有记录的时候都对这个数据列刷新
TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
2.在创建新纪录的时候把这个字段设置为当前时间,但以后修改时,不再刷新它
TIMESTAMP DEFAULT CURRENT_TIMPSRAMP
3.在创建新纪录的时候把这个字段设置为0,以后修改时刷新它
TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
4.在创建新纪录时把这个字段设置为给定值,以后修改时再刷新它
TIMESTAMP DEFAULT 'yyyy-mm-dd hh:mm:ss' ON UPDATE CURRENT_TIMESTAMP
关于TIMESTAMP的具体具体用法可参考:http://www.jb51.net/article/51794.htm