数据库mysql中,想建立一个默认值是系统当前时间的字段,那么这个字段的类型必须是timestam

数据库mysql中,想建立一个默认值是系统当前时间的字段,那么这个字段的类型必须是timestamp的吗?我之前用datetime类型的,总报错。createtables... 数据库mysql中,想建立一个默认值是系统当前时间的字段,那么这个字段的类型必须是timestamp的吗?我之前用datetime类型的,总报错。
create table share (id int primary key auto_increment,
name varchar(100),
addrip varchar(50),
savetime datetime not null default now(),
other varchar(50));
这是代码,时间那一行有问题,大家给看看.
展开
 我来答
晓晓先生z
2017-11-16 · TA获得超过2万个赞
知道大有可为答主
回答量:5408
采纳率:65%
帮助的人:1090万
展开全部

应该用timestamp,建表SQL改动如下:

CREATE TABLE share (
    id INT(11) PRIMARY KEY AUTO_INCREMENT,
    `name` VARCHAR(100),
    addrip VARCHAR(50),
    savetime TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
    other VARCHAR(50)
);
  • SQL中关键字尽量大写,如果你用SQLyog它会自动把关键字转换为大写;

  • name是保留字,虽然没有影响,但是不能保证以后没有影响,如果使用关键字、保留字做字段,最好加上``符号包裹,以免出错。所有自己命名的地方,都可以使用``符号包裹;

  • 另外,每个字段最好使用 COMMENT '内容',给每个字段加上注释,这样以后看到的时候不会想不起来字段的含义。

能言善辩86
2014-06-16
知道答主
回答量:8
采纳率:0%
帮助的人:7.4万
展开全部
DATETIME 就可以了 ,插系统当前时间,或是date 也可以
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
无厘头吧
2014-06-16 · TA获得超过571个赞
知道小有建树答主
回答量:531
采纳率:62%
帮助的人:151万
展开全部
都可以
报错是你程序映射的问题吧
now()
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式