当我尝试创建一个已经存在的数据库时,
CREATE DATABASE IF NOT EXISTS test;
Query OK, 1 row affected (0.00 sec)
CREATE DATABASE IF NOT EXISTS test;
Query OK, 1 row affected, 1 warning (0.00 sec)
为什么它没有1 row affected
第二次显示消息,即使它没有创建具有相同名称的新数据库?
虽然CREATE DATABASE IF NOT EXISTS test;
命令将不直接修改在一个离开实例行test
数据库,它会影响内部存储在实际的细节mysql
的数据库,或可能在的派生元视图之一,像information_schema
或performance_schema
等
报告Query OK, 1 row affected (0.00 sec)
指的是一在这些内部数据构造之一中排成一行。当您重新CREATE DATABASE
发出命令时,由于该IF NOT EXISTS
子句,该命令正常失败,它仍可能在内部存储元数据,可能是一个存储警告或类似内容的累积字段,甚至只是针对该数据库行的“最后操作”时间戳。无论如何,此记录中存储的数据都会更改,并反映为“受影响的”行。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句