Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql foreignkey表中出现错误_Mysql_Phpmyadmin_Mysql Workbench_Workbench - Fatal编程技术网

Mysql foreignkey表中出现错误

Mysql foreignkey表中出现错误,mysql,phpmyadmin,mysql-workbench,workbench,Mysql,Phpmyadmin,Mysql Workbench,Workbench,我使用MySQL工作台创建了数据库结构。当我执行正向工程或同步模型时,它会显示一些错误。 当我删除外键或将“INT”作为外键连接到第二个表时,它工作正常。但是我想使用“Varchar(255)”。我们不能使用“Varchar(255)”作为外键吗?如果是,请帮助我修复此错误。我无法向前转换到此表。是的,您可以使用varchar作为外键。向表中添加唯一索引或唯一约束是合适的。但是,您的主键通常应该是一些“无意义”的值,例如自动递增的数字或GUID。是的,您可以使用varchar作为外键。没有这样的

我使用MySQL工作台创建了数据库结构。当我执行正向工程或同步模型时,它会显示一些错误。
当我删除外键或将“INT”作为外键连接到第二个表时,它工作正常。但是我想使用“Varchar(255)”。我们不能使用“Varchar(255)”作为外键吗?如果是,请帮助我修复此错误。我无法向前转换到此表。

是的,您可以使用varchar作为外键。向表中添加唯一索引或唯一约束是合适的。但是,您的主键通常应该是一些“无意义”的值,例如自动递增的数字或GUID。

是的,您可以使用varchar作为外键。没有这样的常量在
personal\u detail
表中有外键的另一部分吗?您知道,寄存器表“id”中的第二列?@MridulKashyap是主键。在personal_details表中,“reg_id”是foreignkey,但当我进行正向工程时,它会显示一个错误。@Naruto是的,我将注册表“id”设置为唯一的,并且工作正常。但是我想知道如果我们使用另一个表中的foreignkey,它应该是该表中的主键还是唯一键?它是必须的吗?@acmsohail唯一约束是必须的。首选主键。