首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何处理 MySQL错误码 1215:无法添加约束

本文为作者翻译文章,原文链接:Dealing with MySQL Error Code 1215: “Cannot add foreign key constraint” 在给一个表创建时,MySQL...总是会出现提示: ERROR 1215 (HY000): Cannot add foreign key constraint 这信息基本是啥都没说,下面就来说说几种常见的导致1215错误的情况: 父表不存在...解决方法: 先创建父表,再创建子表; SET FOREIGN_KEY_CHECKS=0;后,创建子表,再创建父表;SET FOREIGN_KEY_CHECKS=1;(这备份常用方式) 标点符号使用不对 错误方式...parent(id); ALTER TABLE child ADD FOREIGN KEY (parent_id) REFERENCES parent(`id`); 父表或者父表中相关列的名字写错了错误...parent_virt INT(10) NOT NULL, FOREIGN KEY (parent_virt) REFERENCES parent(column_virt) ) ENGINE INNODB; 创建失败的更多提示信息

20.5K21
您找到你想要的搜索结果了吗?
是的
没有找到

MySQL中创建错误:1215 Cannot add the foreign key constraint

引言: MySQL中经常会需要创建父子表之间的约束,这个约束是需要建立在主外基础之上的,这里解决了一个在创建主外约束过程中碰到的一个问题。 1....碰到错误 在创建之时,使用的SQL和碰到错误信息如下: alter table `product' add CONSTRAINT `sid_ref` FOREIGN KEY (`sid`)...REFERENCES `sealer` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION 碰到的错误信息如下: 无法正确的插入约束。...要求: 具备相同的数据类型和约束 发现: unsigned,数字的字符长度不一致。 4....总结 之所以出现1215的问题,是由于主外之间的数据类型不一致造成的,以后类似问题,皆可按此处理。

2.4K50

Python Web - Flask笔记6

ORM关系以及一对多: mysql级别的,还不够ORM,必须拿到一个表的,然后通过这个再去另外一张表中查找,这样太麻烦了。...ORM层面删除数据注意事项 ORM代码删除数据时会无视数据表之间的约束,直接删除数据。然后将的数据设置为NULL。就像约束SET NULL一样。...ORM层面删除数据,会无视mysql级别的约束。直接会将对应的数据删除,然后将从表中的那个设置为NULL。如果想要避免这种行为,应该将从表中的的nullable=False。...Flask-SQLAlchemy 安装: pip install flask-sqlalchemy 数据库连接: 跟sqlalchemy一样,定义好数据库连接字符串DB_URI。...虽然flask_sqlalchemy给我们提供了这个特性,但是不推荐使用。

1.9K10

Flask中ORM框架之SQLAlchemy插件入门到弃坑

扩展安装: pip install flask-sqlalchemy Step 2.Flask-SQLAlchemy 扩展配置: 描述: 需要使用Flask 的 app = Flask(__name...ForeignKey 基础实例: 1.反向引用的模型构建 2.使用关系 relationship 进行的反向引用即级联查询; # Day3\App\models.py # 例如以下数据库模型的声明...创建后进行数据库字段迁移升级: PS E:\githubProject\Study-Promgram\Python3\Flask\Day3> python ....# 使用插入数据 @d3.route('/add_fdog/') def add_fdog(): fdog = FDog() # 插入数据根据字段中的值排序的规则为倒序 fdog.fid...中的SQLAlchemy设置数据模型的(ForeignKey)时候无法启动项目; 错误信息: File "D:\Program Files (x86)\Python37-32\lib\site-packages

3K10

盘点Flask与数据库的交互插件--Flask-Sqlalchemy

默认为2小时 SQLALCHEMY_RECORD_QUERIES # 可以用于显式地禁用或启用查询记录 SQLALCHEMY_ECHO # 为Ture时用于调试,显示错误信息...), ForeignKey(), ColumnDefault(默认), Sequenceobjects(序列)定义 key 列名的别名 primary_key 如果为True,则是主键...__name__,self.name) 2).一对多 我们需要建立一个主表和一个子表,分别命名为“father”和‘son’,然后需要建立和反射来互相引用建立一种关系,我们来看看: class father...db.Column(db.Integer,nullable=False) f_id=db.Column(db.Integer,db.ForeignKey('Father.id')) # 建立关联...db.Column(db.Integer,nullable=False) f_id=db.Column(db.Integer,db.ForeignKey('Father.id')) # 建立关联

2.4K60

Flask 入门系列教程(五)

而在 Flask 当中,就有这么一个插件,可以非常方便的操作数据库:Flask-SQLAlchemy Flask-SQLAlchemy Flask-SQLAlchemy 是一个 Flask 扩展,简化了在...和其他大多数扩展一样,Flask-SQLAlchemy 也使用 pip 安装: pip install flask-sqlalchemyFlask-SQLAlchemy 中,数据库使用 URL 指定...最流行的数据库引擎采用的数据库 URL 格式如下所示 数据库引擎 URL MySQL mysql://username:password@hostname/database Postgres postgresql...对象 SQLALCHEMY_DATABASE_URI 中,配置对象中还有一个很有用的选项,即 SQLALCHEMY_COMMIT_ON_TEARDOWN ,将其设为 True 时,每次请求结束后都会自动提交数据库中的变动...这一属性可替代 role_id 访问 Role 模型,此时获取的是模型对象,而不是的值。 添加到 User 模型中的 role_id 列被定义为,就是这个建立起了关系。

3.2K31

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券