Python/MySQL无法添加或更新子行:外键约束失败

2024-10-03 02:40:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我得到下面的错误尝试做和插入

'Cannot add or update a child row: a foreign key constraint fails (tvlistings.channelprogramme, CONSTRAINT channelprogramme_ibfk_1 FOREIGN KEY (CHANNELID) REFERENCES channels (CHANNELID))')

一个快速的google把我带到了这里,但是代码/查询也有点太具体了

Cannot add or update a child row: a foreign key constraint fails

我的插入查询是

  sqlString = """INSERT INTO CHANNELPROGRAMME (
                     CHANNELID, PROGRAMMEID, EPISODEID,
                     RPEAT, NEWSERIES, PREMIERE, CHOICE, SUBTITLES,
                     DEAFSIGNED, STARRATING, PROGDATE, STARTTIME, ENDTIME,
                     DURATION)
                 SELECT
                     T.CHANNELID, P.PROGRAMMEID, E.EPISODEID, T.RPEAT, T.NEWSERIES,
                     T.PREMIERE, T.CHOICE, T.SUBTITLES, T.DEAFSIGNED, T.STARRATING,
                     T.PROGDATE, T.STARTTIME, T.ENDTIME, T.DURATION
                 FROM
                     TVTEMPTABLE T
                     INNER JOIN PROGRAMME P ON P.PROGTITLE=T.PROGTITLE
                     INNER JOIN EPISODE E ON E.SUBTITLE=T.SUBTITLE AND E.EPISODE=T.EPISODE"""
  self._cursor.execute(sqlString)

我正在使用python2.7和MySQLdb来执行此操作。我相信这条消息是说我试图在channelprogramme表中插入一个channelid,而这个表并不存在channels表。不幸的是,我一点也不知道如何解决这个问题?在

下面是如何定义表

^{pr2}$

Tags: orkeyaddchildupdaterowchannelsforeign