添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

[外键约束问题]django.db.utils.IntegrityError: (1215, 'Cannot add foreign key constraint')

DATABASES= {

'default': {

'ENGINE': 'django.db.backends.mysql',

'NAME': 'ebusiness',

'USER':'root',

'PASSWORD':'123456',

'HOST':'localhost',

'PORT':'3306',

'OPTIONS': {

"init_command": "SET foreign_key_checks = 0;",

}#加入这个在setting.py文件中数据库配置中

#'OPTIONS':{'init_command':'SET engine=InnoDB',},

我正在用MySQL数据库构建一个 django 应用程序。当我第一次运行“python manage.py mig ra te”时,一些表创建得很好,然后出现一些错误。出现的错误是: django . db . utils . Integ rity Error : ( 1215 , 'Cannot add for eign key const ra int ')当我运行这个MySQL命令时-SHOW ENGINE INNO DB STATU... File "C:\Python38\lib\site-packages\pymysql\cursors.py", line 163, in execute result = self._query(query) File "C:\Python38\lib\site-packages\pymysql\cursors.py", line 321, in _query conn.query(q) File "C:\Python38\lib\site-packages\p (2)设置外键时“删除时”设置为“SET NULL”3、设置外键时“删除时”设置为“SET NULL”用Navicat在新建表的外键时,弹出如下窗口。1、检查两张关联表对应的字段数据类型是否一致。(1)外键对应的字段数据类型不一致。(3)两张表的存储引擎不一致。2、查询存储引擎是否相同。 今天用数据库时出现 Error 1215 :Cannot add for eign key const ra int 报错,在经历了一番波折后解决了 问题 的所在,写下这篇博客记录一下。 运行的代码: CREATE TABLE `admitpatient_room` ( `PatientID` int (10) NOT NULL, `Disease` varchar(50) DEFAULT NULL, `AdmitDate` date DEFAULT NULL, `RoomNo` int (5) DEF. mysql中添加 外键约束 遇到一下情况: cannot add for eign key const ra int 出现这个 问题 一般是开发工作者对外键的使用出现了疏忽,我们先清晰一下外键的使用: 外键字段不能为该表的主键; 外键字段参考字段必须为参考表的主键。 如果出现”cannot add for eign key const ra int ”的情况,建议先检查一下,主表是否有主键以及从表关联字段是否为从表... http://blog.csdn.net/python_tty/article/details/50909161http://stackoverflow.com/questions/28561458/ django -mysql- error -when-creating-tables from django . db import models class Reporter(models.Model): full_name = models.CharField(max_length=70) # mysite/article/models.py class Article(models.Model): 我使用Ontonotes数据库工具,但遇到 问题 .我读了它的文档,它说这个工具在mysql 5.0上运行良好 . 但是,我找不到这个版本 . 所以,我安装了mysql 5.7 . 出现此 问题 问题 是这样的:python on/tools/init_ db .py --init ontonotes localhost root ontonotes-release-4.0/初始化 DB .../Users/... 解决:“ 外键约束 失败”,可能是数据迁移操作过程中出 问题 了,导致数据表里的对应关系混乱,简单粗暴的方法就是手动删除自己创建的App的mig ra tions文件夹下除了__init__.py的所有文件(包括pycache文件夹),然后再手动删除根目录下的 db .sqlite3文件(这里面存了数据库表) 运行数据迁移语句 python manage.py makemig ra tions python manage.py mig ra te 此后,那些删除的东西都会重建,然后我试验完成后发现我创建的管理员和用.. django . db . utils .Ope ra tional Error : (2013, ‘Lost connection to MySQL server during query‘) 解决办法:看看MySQL服务是否启动 在 Django 2.2启动时出现错误:Lookup Error : No installed app with label ‘admin’ 解决办法: 1.配置好数据库 2. pip install mysqlclient 3.如果以上还是没有解决去下载 pip install django ==2.1