您好我正在創建一個日期爲列名稱的表。我的SQL在ALTER TABLE ADD COLUMN語句中使用變量
我使用此代碼列添加到表:
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作爲變量
這將是你的表的設計不好。 –