如何在 MySQL 中插入格式为 dd-mm-yy 的日期?
How to insert a date in the format dd-mm-yy in MySQL?
我必须在 MySQL 中插入日期,格式为 dd-mm-yy
。
我知道如果我将日期格式更改为 yy-mm-dd
它会起作用,但我的客户希望它的格式为 dd-mm-yy
,默认格式为 MySQL 日期是 0000-00-00
。
正如 Honeyboy 在评论中所说,您可以使用格式字符串 "%d-%m-%y"
的 SELECT_TO_DATE
函数。你可以这样测试:
CREATE DATABASE test;
USE TEST;
CREATE TABLE test (date1 date);
INSERT INTO test (date1) VALUES (STR_TO_DATE("03-04-15","%d-%m-%y"));
然后
SELECT * FROM test;
你获得:
+------------+
| date1 |
+------------+
| 2015-04-03 |
+------------+
如果你使用PHP,你可以做一个准备好的语句,例如:
$stmt = $conn->prepare("INSERT INTO test (date1) VALUES (STR_TO_DATE(?,'%d-%m-%y'));");
$stmt->bind_param("s", $client_date);
$stmt->execute();
其他语言同理
我必须在 MySQL 中插入日期,格式为 dd-mm-yy
。
我知道如果我将日期格式更改为 yy-mm-dd
它会起作用,但我的客户希望它的格式为 dd-mm-yy
,默认格式为 MySQL 日期是 0000-00-00
。
正如 Honeyboy 在评论中所说,您可以使用格式字符串 "%d-%m-%y"
的 SELECT_TO_DATE
函数。你可以这样测试:
CREATE DATABASE test;
USE TEST;
CREATE TABLE test (date1 date);
INSERT INTO test (date1) VALUES (STR_TO_DATE("03-04-15","%d-%m-%y"));
然后
SELECT * FROM test;
你获得:
+------------+
| date1 |
+------------+
| 2015-04-03 |
+------------+
如果你使用PHP,你可以做一个准备好的语句,例如:
$stmt = $conn->prepare("INSERT INTO test (date1) VALUES (STR_TO_DATE(?,'%d-%m-%y'));");
$stmt->bind_param("s", $client_date);
$stmt->execute();
其他语言同理