我们在一个实例中有很多数据库。
我们的查询语言是:
use db1; select * from table1;
use db2; select * from table2;
但是当我们改变这种风格时,MySQL服务器CPU负载下降了很多:
select * from db1.table1;
select * from db2.table2;
它们之间有什么不同?
我们应该使用哪一个?
答案 0 :(得分:0)
MySQL可以在单个查询中使用多个数据库。每个表都属于一个数据库。它的全名是:database.table
。
如果您坚持使用单个数据库,那么您可能不希望使用数据库前缀。 USE database
允许您免除前缀。
如果您同时使用多个数据库,那么您将永远不会进入正确的数据库。在非常租约时,您需要在其他数据库表格前加上前缀。
我不知道MySQL在应用USE database
语句时做了多少工作,但我想这在整体方案中并不是很重要。在正常情况下,您正在使用单个数据库,因此发出USE
语句一次应该是它的结束。
当然,如果你经常在两者之间切换,特别是如果你要加入来自不同数据库的表,那么你应该在表格前加上。