我正在尝试在作为外键的表中创建一个列,但在 MySQL 中这比它应该的要困难。这将需要我返回并对已使用的表进行某些更改。所以我想知道,MySQL 是否有必要确保某个值是合适的?难道我不能只用像 PHP 这样的语言来做到这一点吗,无论如何我都用它来访问这个数据库?
与 NOT NULL 类似。如果我只用 PHP 访问这个数据库,我不能简单地让 PHP 确保没有输入空值吗?
为什么我应该使用 MySQL 来强制执行这些约束,而我可以使用 PHP 来做到这一点?
由于上述原因,我意识到 NOT NULL 是一个非常愚蠢的部分。但是 MySQL 不会强制执行外键,除非有严重程度的胡闹。
在您看来,使用“假”外键并简单地检查要输入的值是否在其他表中与 PHP 匹配是否仍然很糟糕?