当我使用“月”创建表时,他只给出了注册信息

问题描述

我创建小时表

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

MysqL仅给我提供注册,而不给我在PHP中使用按钮的名称。这有什么问题,如何正确?我认为我的PHPadmin没有MONTH函数

解决方法

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

fiddle

PS。 HOURReserved word-我建议重命名表。

,

存储完整的时间戳,它在同一个表的单独列中的月份部分绝对是多余的。您可以只讲日期时间,并在选择查询中获取月:

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上进行测试