每一款软件从V1.0到V*.*的更迭是不断完善的过程,使用者在这个过程中需要不断的追随她的脚步,不然就会被out。
--序
1、前言
准备将一个数据库(test.sql)从MySQL数据库服务器导出来,导入到本地的MySQl数据库上面用于测试数据。
2、问题描述:
DROP TABLE IF EXISTS `device`;
CREATE TABLE `device`(
`id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
`createtime` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`updatetime` datetime NOT NULL COMMENT '最后更新时间',
PRIMARY KEY (`id`)
)
COMMENT='设备表'
COLLATE='utf8_general_ci'
ENGINE=InnoDB;
在服务器上面运行结果:
在本地运行:
3、问题分析:
两个数据库都是我创建的,服务器数据库不是我安装的,两个念头出现在我脑子里面,配置问题,版本问题。
3.1、数据库配置问题:
查看数据库服务器属性:
本地数据库属性:
字符集都是一样的。
3.2、数据库版本问题:
然后通过命令行查看版本,服务器的版本:
本地版本:
网上查询:
这个结果有一定的帮助:
datetime ----à timestamp
4、问题解决:
其实在上面的链接里面看出来,需要将datatime换成timestamp,但是还是有问题:
大致意思就是timestamp列只能有一个使用current_timestamp,其他timestamp只能使用DEFAULT或者ON UPDATE。
最终我想实现的是记录一条记录的创建时间和修改时间。具体方法参考链接。