0

我创建一个小时的表

CREATE TABLE hour (
    Name1 varchar(25) not null,
    Datee Datetime not null DEFAULT (CURRENT_TIMESTAMP()),
    Monthh date not null DEFAULT (MONTH(CURRENT_DATE()))
);

Mysql 只给我 0000-00-00 而不是我在 php 中使用按钮的名称。这有什么问题以及如何正确?在我看来,我的 phpadmin 没有 MONTH 功能

4

2 回答 2

0
CREATE TABLE hour ( Name1 varchar(25) not null,
                    Datee DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
                    Monthh TINYINT NOT NULL DEFAULT (MONTH(CURRENT_TIMESTAMP))
                  );

小提琴

PS。HOUR保留字- 我建议重命名一个表。

于 2020-11-05T10:02:52.613 回答
0

将完整的时间戳和月份部分存储在同一张表的不同列中是绝对多余的。您可以仅记录日期时间并在选择查询中获取月份:

CREATE TABLE Godzina (
  Nazwa varchar(25) not null,
  Randka Datetime not null DEFAULT CURRENT_TIMESTAMP()
);

INSERT INTO Godzina (Nazwa) VALUES ('TestName');

SELECT 
    Nazwa,
    Randka,
    MONTH(Randka) AS Miesiac
FROM Godzina;

SQLize.online上进行测试

于 2020-11-05T11:00:25.343 回答