在mysql数据库表中插入日期,从现在起几天内

在mysql数据库表中插入日期,从现在起几天内,mysql,sql,Mysql,Sql,使用下表: CREATE TABLE landingList( isbn varchar(10) NOT NULL, id varchar(10) NOT NULL, dateFrom date NOT NULL, dateTill date NOT NULL, PRIMARY KEY (isbn, id, dateFrom, dateTill), FOREIGN KEY (isbn) REFERENCES books (isbn), FOREIGN KEY (id) REFERENCES us

使用下表:

CREATE TABLE landingList(
isbn varchar(10) NOT NULL,
id varchar(10) NOT NULL,
dateFrom date NOT NULL,
dateTill date NOT NULL,
PRIMARY KEY (isbn, id, dateFrom, dateTill),
FOREIGN KEY (isbn) REFERENCES books (isbn),
FOREIGN KEY (id) REFERENCES users (id)
);
尝试插入以下值

INSERT INTO library.landingList (isbn, id, dateFrom, dateTill) 
VALUES ('9780596009205','123234 ', NOW(), DATE_ADD(dateFrom, INTERVAL 6 DAY ));
对于每本书,间隔将是不同的值

如果dateFrom为now(),则只需在添加数据时使用now()。见下文:

插入到library.landingList中 (isbn,id,dateFrom,dateTill) 价值观
('9780596009205'、'123234'、NOW(),日期添加(NOW(),间隔6天)

这在什么方面没有达到预期效果?是否有错误?不能重复使用表来插入新数据。使用
insert…select
由于约束,我无法执行此操作,这是一个问题:无法添加或更新子行:外键约束失败(
library
landinglist,constraint
landinglist\u ibfk\u 1
外键(
isbn
)参考资料
books
isbn
)外键约束问题与使用“books”表中不存在的“isbn”有关。这与上面的问题以及date_add()中now()的用法无关。顺便说一句,如果您的mysql实例没有设置为捕获这些类型的错误,那么您在插入中使用的isbn大于10个字符,这可能与您的问题有关。