Phi*_*hil 44 mysql format date insert
我试图进一步提出我昨天问的问题,我想知道如何以不同的格式查询日期.但是现在我正在尝试使用这种方法进行插入(见下文)但是我无法使其工作.我已经检查了手册,但它不是初学者友好的!
INSERT INTO custorder VALUES ('Kevin','yes'), STR_TO_DATE('1-01-2012', '%d-%m-%Y');
Run Code Online (Sandbox Code Playgroud)
ype*_*eᵀᴹ 110
将日期放在单引号中并将括号(在'yes')之后移动到结尾:
INSERT INTO custorder
VALUES ('Kevin', 'yes' , STR_TO_DATE('1-01-2012', '%d-%m-%Y') ) ;
^ ^
---parenthesis removed--| and added here ------|
Run Code Online (Sandbox Code Playgroud)
但是你总是可以使用没有STR_TO_DATE()功能的日期,只需使用(Ymd)'20120101'或'2012-01-01'格式.检查MySQL文档:日期和时间文字
INSERT INTO custorder
VALUES ('Kevin', 'yes', '2012-01-01') ;
Run Code Online (Sandbox Code Playgroud)
小智 11
看起来你没有正确封装你的字符串.试试这个:
INSERT INTO custorder VALUES ('Kevin','yes'), STR_TO_DATE('1-01-2012', '%d-%m-%Y');
Run Code Online (Sandbox Code Playgroud)
或者,您可以执行以下操作:
INSERT INTO custorder VALUES ('Kevin','yes'), '2012-01-01';
Run Code Online (Sandbox Code Playgroud)
但是,我不确定上述SQL是否有效,您可能希望将日期部分移动到括号中.如果您能提供确切的错误,我可以更直接地帮助解决问题.
小智 6
mysql插入查询的日期格式是 YYYY-MM-DD
例:
INSERT INTO table_name (date_column) VALUE ('YYYY-MM-DD');
Run Code Online (Sandbox Code Playgroud)