我打算在java mysql中创建一个考勤系统,并且卡在日期和时间函数中。我的问题是我如何自动将日期插入我的数据库。我的表看起来像这样:
Create table automatic
(
`id` int(20) NOT NULL AUTO_INCREMENT,
`name` varchar(500) NOT NULL,
`class` varchar(255) NOT NULL,
`remark` varchar(255) NOT NULL,//remarks suggest presnt or absent
`date` datetime DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB;
答案 0 :(得分:1)
我希望您在将记录插入数据库时自动插入日期时间。使用DEFAULT CURRENT_TIMESTAMP
Create table automatic
(
`id` int(20) NOT NULL AUTO_INCREMENT,
`name` varchar(500) NOT NULL,
`class` varchar(255) NOT NULL,
`remark` varchar(255) NOT NULL,//remarks suggest presnt or absent
`date` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB;
答案 1 :(得分:0)
CURDATE()会返回当前日期。
你可以像这样使用它:
CREATE TABLE Orders
(
OrderId int NOT NULL,
ProductName varchar(50) NOT NULL,
OrderDate datetime NOT NULL DEFAULT CURDATE(),
PRIMARY KEY (OrderId)
)
如果想要跟踪客户的订单,许多购物网站会使用此功能。 同样,它有许多其他用途。
CREATE TABLE dates
(
id int NOT NULL,
id_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (id)
);
INSERT INTO dates (id) VALUES (1);
SELECT id, DATE(id_date) AS id_date FROM dates;
id id_date
1 2010-09-12