您好我正在寻找以日期作为列名的表。
我正在使用此代码将列添加到表中:
DROP PROCEDURE IF EXISTS filldates;
DELIMITER |
CREATE PROCEDURE filldates(dateStart DATE, dateEnd DATE)
BEGIN
WHILE dateStart <= dateEnd DO
ALTER TABLE dates
ADD dateStart VARCHAR(30);
SET dateStart = date_add(dateStart, INTERVAL 1 DAY);
END WHILE;
END;
|
DELIMITER ;
CALL filldates('2017-01-01','2017-12-31');
但它将错误 dateStart 显示为重复内容,因为它创建了一个列“dateStart”而不是日期。如何使用 dateStart 作为变量。
当我使用“INSERT INTO tablename (_date) VALUES (dateStart);” 而不是 ALTER TABLE 语句,它不显示任何错误,它正在将日期插入数据库,但作为 '_date' 列中的行。我希望将日期添加为列名。
如何使用 dateStart 作为变量