MySQL foreign_key_checks 是否影响整个数据库?

mysqlmysqli database更新于 2024/12/27 23:08:17

foreign_key_checks 是基于会话的。现在,我们可以说它们是针对范围的,即本地或全局。以下是本地或全局的示例演示。两者都是范围,我们可以将其设置为会话。

让我们设置范围 −

mysql> set foreign_key_checks = 0;
Query OK, 0 rows affected (0.00 sec)
mysql> set global foreign_key_checks = 0;
Query OK, 0 rows affected (0.05 sec)

foreign_key_checks 变量是服务器系统变量。以下是更多详细信息−

PropertyValue
System Variableforeign_key_checks
ScopeGlobal, Session
DynamicYes
TypeBoolean
Default ValueON

将 foreign_key_checks 设置为 0

它会影响数据定义语句:DROP SCHEMA 会删除一个架构,即使它包含的表具有由架构外部的表引用的外键,而 DROP TABLE 会删除具有由其他表引用的外键的表。

将 foreign_key_checks 设置为 1

它不会触发对现有表数据的扫描。因此,在 foreign_key_checks=0 时添加到表中的行将不会进行一致性验证。


相关文章


有用资源