MySQL:当我没有';你不用它吗?
现在我有一个表,它有两个外键,两个外键都指向不同的表。当我在一个外键字段中插入值,而不是在另一个外键字段中插入值时,由于外键约束,我的插入失败。当我不使用外键时,如何为引用外键的列指定默认值(如NULL或0),或使外键成为可选的?我正在为我的表使用MySQL和XAMPP。将该列声明为可空MySQL:当我没有';你不用它吗?,mysql,foreign-keys,nullable,Mysql,Foreign Keys,Nullable,现在我有一个表,它有两个外键,两个外键都指向不同的表。当我在一个外键字段中插入值,而不是在另一个外键字段中插入值时,由于外键约束,我的插入失败。当我不使用外键时,如何为引用外键的列指定默认值(如NULL或0),或使外键成为可选的?我正在为我的表使用MySQL和XAMPP。将该列声明为可空 然后在不使用外键的情况下在列中使用NULL。首先,如果它是一个键,那么它不能是可选的,也不能是NULL/default,这是它的简单逻辑。 我不记得如何创建,但您可以创建一组密钥(组合密钥),然后您可以设置一个
然后在不使用外键的情况下在列中使用NULL。首先,如果它是一个键,那么它不能是可选的,也不能是NULL/default,这是它的简单逻辑。 我不记得如何创建,但您可以创建一组密钥(组合密钥),然后您可以设置一个默认值,至少其中一个是uniq:
<key1.a , 0 >,
<key1.b , 0 >,
< 0 , key2.a >,
< 0 , key2.b >,
<key1.a , key2.b >,
<key1.a , key2.c >,etc...
,
,
<0,键2.a>,
<0,键2.b>,
,
等
我在八年前就回答了这个类似的问题!嗯,这比我想象的要简单。我认为,由于该列被声明为外键,因此不能将其设置为NULL。非常感谢。