Python之sqlalchemy錯誤:pymysql.err.IntegrityError) (1215, 'Cannot add foreign key constraint')

錯誤消息:sqlalchemy.exc.IntegrityError: (pymysql.err.IntegrityError) (1215, 'Cannot add foreign key constraint')

今天發現一個奇怪的現象,同一套Python代碼在本地運行時正常的,而在服務器上運行卻提示上面的錯誤!網上找了半天,沒有一篇靠譜的文章之後,自己研究一下兩個環境的對比,最終發現和代碼本身無關,而是MySQL的配置不一樣導致的!

 

MyISAM和InnoDB引擎的區別及如何修改Mysql修改表引擎:http://www.javashuo.com/article/p-wlxqsuxw-mb.html

 

本地成功的表引擎MyISAM 

 

服務器運行失敗的引擎:InnoDB 

最終的解決方案(修改默認表引擎):服務器的mysql修改配置文件的引擎爲MyISAM 即可

找到位於MySql根目錄下的my.ini文件 


 

1.修改mysqld下的default-storage-engine後面的值爲MYISAM ,若沒有則添加default-storage-engine=MYISAM


 

2..重啓MySql