CodeIgniter Working with multiple Databases
I am trying to list all the mysql databases and their respective tables, I am currently using this, but can anybody r开发者_开发知识库ecommend if there is any better way.
$q = $this->db->query('SHOW DATABASES');
$databases = $q->result_array();
foreach($databases as $db) {
$this->db->query('USE '. $db['Database']);
$q = $this->db->query('SHOW TABLES');
$tables = $q->result_array();
}
You can use the information_schema special database, which has tables that describe all the other databases, tables, and columns.
That way you only need 1 query:
SELECT table_schema, table_name
FROM information_schema.tables
ORDER BY table_schema, table_name;
精彩评论