我有一个表Members
,并且列DayJoin
的类型为varchar
。我想设置列的默认值DayJoin
应该是当天,如果用户没有输入该字段的值。如何在mySQL中将当前日期设置为默认日期
在MSSQL服务器我写了这样一句话:
CREATE TABLE Members
(
ID int identity (1,1) primary key,
Email varchar(50),
Password Varchar(50),
Role Varchar(50) default 'Member',
DayJoin varchar(50) DEFAULT Convert(varchar, GETDATE(),103),
LastLogin varchar(50)DEFAULT Convert(varchar, GETDATE(),103),
FName varchar(50),
LName varchar(50),
Phone varchar(50),
DOB varchar(50),
Gender varchar(50),
IDcard varchar(50),
Address varchar(50),
City varchar(50),
Job varchar(50),
Avatar varchar(50) default 'images/noavatar.gif'
)
的语句获取当前日期和格式,它作为(DD/MM/YYYY)的值。但是,当我运行MySQL中的类似之一,它不工作
CREATE TABLE `NewTable` (
`ID` int UNSIGNED NULL AUTO_INCREMENT ,
`Email` varchar(50) NULL ,
`Password` varchar(50) NULL DEFAULT '' ,
`Role` varchar(10) NULL ,
`DayJoin` varchar(10) NULL DEFAULT 'CURRENT_TIMESTAMP' ,
`LastLogin` varchar(10) NULL DEFAULT 'date_format(now(),%Y/%m/%d)' ,
`Firstname` varchar(50) NULL ,
`Lastname` varchar(50) NULL ,
`Phone` varchar(20) NULL ,
`DOB` varchar(10) NULL ,
`Gender` varchar(20) NULL ,
`IDcard` varchar(20) NULL ,
`Address` varchar(50) NULL ,
`City` varchar(50) NULL ,
`Job` varchar(50) NULL ,
`Avatar` varchar(50) NULL DEFAULT 'images/noavatar.gif' ,
PRIMARY KEY (`ID`)
)
ENGINE=ARCHIVE
DEFAULT CHARACTER SET=utf8 COLLATE=utf8_unicode_ci
;
我得到回应说类似的东西; “出错的默认值”
有谁知道这个问题是什么?
尝试:'DayJoin TIMESTAMP NULL DEFAULT“CURRENT_TIMESTAMP'', –
可以分享你的错误信息? –
这是我的错误。我使用Navicat连接到数据库。 对不起,我没有足够的东西来张贴图片。您可以通过链接查看http://i.upanh.com/viafev 问题1:我尝试过日期。 datetime,TIMESTAMP ...但这是行不通的。我显示相同的错误... 问题2:我想将其格式化为dd/mm/yy替代yyyy/mm/dd并使用斜杠(/)不是( - ) – TommyDo