如图是做了一个ER图
我不理解的是,它的外键是自动生成的,如果这样的话,这个外键也没有定义,是否生成后还要重新定义其值呢?
如果不定义其值,那么这样建表岂不乱套了
因为字段无中生有的出来了

解决方案 »

  1.   

    外键是你指定的,而不是自动生成的
    需要在建表语句中有形如这样的子句 CONSTRAINT `FK_ID` FOREIGN KEY (`user_id`) REFERENCES `tb_user` (`id`) 如果公共关键字在一个关系中是主关键字,那么这个公共关键字被称为另一个关系的外键。
    这是名义上的,如果没有显式的声明,那么约束关系是你自己维护的如果外键的约束关系委托给数据库维护了,那就有可能给数据库使用带来很多麻烦。这一点是需要清楚的认知的