【发布时间】:2018-11-05 16:50:13
【问题描述】:
我有一张表格,用于在应用程序中存储短信。我想添加使用表情符号的功能,但它们一直显示为? ? ? ?等等......在数据库中。我了解到我需要更改表的字符集,所以我运行了命令
ALTER TABLE posts CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_bin
但我收到此错误:Error Code: 1832. Cannot change column 'user_id': used in a foreign key constraint 'posts_ibfk_2'
所以我放弃了 FK,然后运行命令,一切正常。但是现在,当我尝试读取 FK 时,我不断收到 1215 错误,我无法添加 FK 约束。
ALTER TABLE posts
ADD FOREIGN KEY (user_id)
REFERENCES users(id);
我尝试将字符集转换回原来的样子,但仍然无法添加 FK。怎么加回来?
【问题讨论】:
标签: mysql sql database foreign-keys